Smart device position and orientation synchronization function

ABSTRACT

A method in accordance with the invention includes prompting a user to align a mobile device with a geometric feature (e.g., a window sill, corner, etc.) of a window. The method further determines a position and orientation of the window using sensors of the mobile device. Based on the position and orientation of the window, the method determines a position of the sun over time relative to the window. The method automatically adjusts a window covering of the window to take into account the position of the sun over time. For example, the method may automatically tilt slats of a window blind or open or close a window covering to take into account the position of the sun over time. A corresponding system is also disclosed herein.

RELATED APPLICATIONS

This application claims priority to U.S. Provisional Patent Ser. No.61/977,008 filed on Apr. 8, 2014 and entitled “Intelligent WindowCoverings”; U.S. Provisional Patent No. 62/005,140 filed on May 30, 2014and entitled “Universal Motorized Blind Tilt Mechanism”; and U.S.Provisional Patent No. 62/051,048 filed on Sep. 16, 2014 and entitled“Cable Pull Switch with Power and Data Pass-Through Capability.” Thisapplication is also a continuation of U.S. patent application Ser. No.14/682,077 filed on Apr. 8, 2015 entitled “Motorized Gearbox Assemblywith Through-Channel Design;” U.S. patent application Ser. No.14/682,085 filed on Apr. 8, 2015 entitled “Headrail Bracket forInstalling a Motorized Gearbox Assembly in a Window Covering;” U.S.patent application Ser. No. 14/682,091 filed on Apr. 8, 2015 entitled“Pull Cord for Controlling a Window Covering;” U.S. patent applicationSer. No. 14/682,100 filed on Apr. 9, 2015 entitled “Video DisplayAdapter for Controlling a Window Covering;” U.S. patent application Ser.No. 14/682,104 filed on Apr. 9, 2015 entitled “Pull Cord with IntegratedCharging Port;” U.S. patent application Ser. No. 14/682,108 filed onApr. 9, 2015 entitled “Intelligent Window covering IncorporatingSecurity Features; and U.S. patent application Ser. No. 14/682,110 filedon Apr. 9, 2015 entitled “Intelligent Window Covering IncorporatingClimate Control Features.”

BACKGROUND

Field of the Invention

This invention relates to apparatus and methods for automating windowblinds and other windows coverings.

Background of the Invention

Home automation, also known as home monitoring, home control, smarthome, connected home, or the like, is becoming more and more prevalent.This increase is due in large part to modern-day advances in softwareand electronics, coalescence around a number of home automationprotocols, and larger numbers of manufacturers willing to build smartdevices using these protocols. Home automation may be as simple asautomating a few devices in a relatively small home or space, or ascomplicated as automating an entire residence or building comprisinghundreds or even thousands of smart devices. The number and type ofsmart devices that are available has dramatically increased as more andmore manufacturers, including various major technology players, aregetting involved in this space. Some of the most popular home automationdevices currently utilized include lights, window coverings,thermostats, audio and video systems, door locks, security systems, andthe like.

Nevertheless, outfitting a home with smart devices can be a difficultdecision for a home or business owner. Many times, the home or businessowner already owns a large number of conventional non-smart devices.Replacing these devices can be expensive and/or wasteful. For example, ahome or business owner may have already made a substantial investment inmanually-operated window coverings such as window blinds. Replacing thewindow blinds with automated versions of the same can be prohibitivelyexpensive in addition to requiring significant amounts of labor.Retrofitting the window blinds can also be problematic in that multipledifferent designs and sizes of window blinds may exist, and retrofitsolutions may be limited in terms of the designs and sizes they can workwith. Retrofitting the window blinds may also require significantmodifications to the window blinds to make the retrofit solutionfunction properly. In certain cases, retrofitting window blinds mayrequire removing the window blinds and cutting or otherwise modifyingvarious components thereof.

Many offerings in terms of automated window blinds or window coveringsmay also fail to capitalize on their special placement within a home orbuilding, namely on or near windows or other openings. The proximity ofwindow blinds to windows and other openings make it possible for smartwindow blinds to provide a wide variety of features and functions notnormally associated with window blinds.

In view of the foregoing, what are needed are apparatus and methods toautomate window coverings such as window blinds. Ideally, such apparatusand methods will enable different types and sizes of existing windowblinds to be automated. Such apparatus and methods will also ideallyenable retrofitting window blinds while minimizing modificationsthereto. Yet further needed are apparatus and methods that takeadvantage of the special placement of window blinds within a home orbuilding. Specifically, apparatus and methods are needed to enablewindow blinds to provide features and functions not normally associatedwith window blinds, but capitalize on their placement near windows,entryways, or other openings.

SUMMARY

The invention has been developed in response to the present state of theart and, in particular, in response to the problems and needs in the artthat have not yet been fully solved by currently available apparatus andmethods. Accordingly, apparatus and methods in accordance with theinvention have been developed to automate window blinds and otherwindows coverings. The features and advantages of the invention willbecome more fully apparent from the following description and appendedclaims, or may be learned by practice of the invention as set forthhereinafter.

In a first embodiment of the invention, an apparatus in accordance withthe invention includes a motor and a gearbox coupled to the motor andconfigured to apply torque to a tilt rod of a window blind. The gearboxis configured to enable the tilt rod to pass completely through thegearbox. In certain embodiments, the gearbox includes a shaft configuredto apply torque to the tilt rod. This shaft may extend from a first endof the gearbox to a second end of the gearbox and may include athrough-channel to enable the tilt rod to pass completely therethrough.A corresponding method is also disclosed herein.

In a second embodiment of the invention, an apparatus in accordance withthe invention includes a headrail bracket configured to be inserted intoa headrail at an angle from a top thereof. The headrail bracket includesclips to engage a top edge of the headrail, and an attachment mechanismto attach to a gearbox assembly configured to rotate a tilt rod of awindow blind tilting mechanism. In certain embodiments, the headrailbracket is a single component with a substantially low profile. Thisheadrail bracket may span a top of the headrail. In other embodiments,the headrail bracket includes a first component to secure a first end ofthe gearbox assembly to the headrail and a second component to secure asecond end of the gearbox assembly to the headrail. In certainembodiments, the first component slides over the first end of thegearbox assembly and the second component slides over the second end ofthe gearbox assembly. A corresponding method is also disclosed herein.

In a third embodiment of the invention, an apparatus in accordance withthe invention includes a window covering actuation mechanism and agearbox assembly configured to electromechanically operate the windowcovering actuation mechanism. A pull cord is configured to receive “cordgestures” from a user. These “cord gestures” may include one or more ofpull sequences, pull durations, numbers of pulls, durations betweenpulls, and strength of pulls. In certain embodiments, “cord gestures”may also be defined by pull direction. A controller receives the cordgestures and translates the cord gestures into commands for controllingthe gearbox assembly. A corresponding method is also disclosed herein.

In a fourth embodiment of the invention, a system in accordance with theinvention includes a video display adapter, such as a USB or HDMIdongle, configured to generate a signal when a video display (e.g., atelevision, projector, etc.) is turned on or off. A controller receivesthe signal and automatically actuates a motorized window covering inresponse to the signal. In certain embodiments, the motorized windowcovering receives the signal directly from the video display adapterwithout requiring any intervening electronic devices. A correspondingmethod is also disclosed herein.

In a fifth embodiment of the invention, an apparatus in accordance withthe invention includes a gearbox assembly configured toelectromechanically operate a window covering actuation mechanism. Apull cord is provided to at least one of power the gearbox assembly andcharge a battery to power the gearbox assembly. In certain embodiments,manual operation of the pull cord is used to control the gearboxassembly. An electrical conductor and associated electrical connectormay be incorporated into the pull cord. A corresponding method is alsodisclosed herein.

In a sixth embodiment of the invention, an apparatus in accordance withthe invention includes a gearbox assembly configured toelectromechanically operate a window covering. A controller,incorporated into the window covering, is provided to control thegearbox assembly. A security device, such as a camera, motion sensor,audio sensor, proximity sensor, impact sensor, or the like, communicateswith the controller and is configured to monitor security at a windowassociated with the window covering. Such a security sensor may, forexample, monitor opening and/or closing of the window, breaking of thewindow, or the like. In certain embodiments, operation of the windowcovering is triggered in response to conditions sensed by the securitydevice. A corresponding method is also disclosed herein.

In a seventh embodiment of the invention, an apparatus in accordancewith the invention includes a gearbox assembly configured toelectromechanically operate a window covering. A controller,incorporated into the window covering, is provided to control thegearbox assembly. A temperature sensor communicates with the controllerand monitors temperature proximate a window associated with the windowcovering. The temperature sensor may monitor the temperature of thewindow, temperature external to the window, temperature internal to thewindow, temperature within a headrail of the window covering, or thelike. The controller is further configured to relay at least one ofcommands and information to an HVAC controller to regulate roomtemperature in accordance with the monitored temperature. Acorresponding method is also disclosed herein.

In an eighth embodiment of the invention, a method in accordance withthe invention includes prompting a user to align a mobile device with ageometric feature (e.g., a window sill, corner, etc.) of a window. Themethod further determines a position and orientation of the window usingsensors of the mobile device. Based on the position and orientation ofthe window, the method determines a position of the sun over timerelative to the window. The method automatically adjusts a windowcovering of the window to take into account the position of the sun overtime. For example, the method may automatically tilt slats of a windowblind or open or close a window covering to take into account theposition of the sun over time. A corresponding system is also disclosedherein.

In a ninth embodiment of the invention, an apparatus in accordance withthe invention includes a directional switching device configured toprovide directional control along multiple axes (e.g., perpendicularaxes). Directional control along a first axis enables selection of acurrent function from a plurality of functions. Similarly, directionalcontrol along a second axis increases or decreases an amount associatedwith the current function. In certain embodiments, an indicator, such ascolored light, may indicate the current function of the directionalswitching device. Selection of a first function from the plurality offunctions may enable the directional switching device to wirelesslycontrol a first device, while selection of a second function from theplurality of functions may enable the directional switching device towirelessly control a second device. A corresponding method is alsodisclosed herein.

In a tenth embodiment of the invention, an apparatus in accordance withthe invention includes a motor and a gearbox coupled to the motor andconfigured to actuate a window covering. The gearbox includes aninternal wall enclosing gears of the gearbox, and an external wallenclosing the internal wall and creating a cavity between the internalwall and the external wall. The external wall is configured to supportan output shaft extending from the internal wall. A corresponding methodis also disclosed herein.

In an eleventh embodiment of the invention, an apparatus in accordancewith the invention includes a motor and a gearbox coupled to the motorand comprising an output shaft configured to actuate a window covering.A position encoder, directly driven by the output shaft, is configuredto measure at least one of an angular position and a number of rotationsof the output shaft. The angular position and number of rotations may beused to calculate an angular position of slats of a window blind and/oran amount a window covering is opened or closed. A corresponding methodis also disclosed herein.

In a twelfth embodiment of the invention, a method for calibrating anautomated window covering includes electromechanically actuating awindow covering and measuring electrical current required to actuate thewindow covering. The method further measures movement of the windowcovering, where such movement includes one or more of a change inposition and velocity of the window covering. The method estimates asize (e.g., height, width, area, etc.) of the window covering and/or anamount of force required to actuate the window covering based on themeasured electrical current and movement. A corresponding apparatus isalso disclosed herein.

BRIEF DESCRIPTION OF THE DRAWINGS

In order that the advantages of the invention will be readilyunderstood, a more particular description of the invention brieflydescribed above will be rendered by reference to specific embodimentsillustrated in the appended drawings. Understanding that these drawingsdepict only typical embodiments of the invention and are not thereforeto be considered limiting of its scope, the invention will be describedand explained with additional specificity and detail through use of theaccompanying drawings, in which:

FIG. 1 is a perspective view showing one embodiment of a window blindretrofitted with a motorized gearbox assembly in accordance with theinvention;

FIG. 2 is a perspective view showing one embodiment of a motorizedgearbox assembly in accordance with the invention;

FIG. 3 is a perspective view showing one embodiment of a headrailbracket for use with a motorized gearbox assembly in accordance with theinvention;

FIG. 4 is a perspective view showing various internal components,including an output shaft having a through-channel, of a motorizedgearbox assembly in accordance with the invention;

FIG. 5 is a perspective view showing various internal components of amotorized gearbox assembly with its output shaft removed;

FIG. 6 is a top view showing various internal components of a motorizedgearbox assembly in accordance with the invention;

FIG. 7 is another perspective view of internal components of a motorizedgearbox assembly with its output shaft removed;

FIG. 8 is an end view of a motorized gearbox assembly in accordance withthe invention, particularly showing an output shaft with an adapterinsert to interlock with and apply torque to a tilt rod;

FIG. 9 is a perspective view of one embodiment of an adapter insert tointerlock with a first type of tilt rod;

FIG. 10 is a perspective view of another embodiment of an adapter insertto interlock with a second type of tilt rod;

FIG. 11 is a perspective view of one embodiment of a motorized gearboxassembly comprising an internal and external wall to reduce gearboxnoise;

FIG. 12 is a perspective view of various internal components of themotorized gearbox assembly illustrated in FIG. 11;

FIG. 13 is another perspective view of internal components of themotorized gearbox assembly illustrated in FIG. 11;

FIG. 14 is another perspective view of internal components of themotorized gearbox assembly illustrated in FIG. 11, particularly showingan adapter insert to interlock with and apply torque to a tilt rod;

FIG. 15 is another perspective view of internal components of themotorized gearbox assembly illustrated in FIG. 11, particularly showinga position encoder within the motorized gearbox assembly;

FIG. 16 is another perspective view of internal components of themotorized gearbox assembly illustrated in FIG. 11, particularly showingthe position encoder directly driven by the output shaft;

FIG. 17 is another perspective view of the position encoder directlydriven by the output shaft;

FIG. 18 is a perspective view of internal components of the motorizedgearbox assembly of FIG. 11 with most of the internal wall removed;

FIG. 19 is another perspective view of internal components of themotorized gearbox assembly of FIG. 11 with most of the internal wallremoved;

FIG. 20 is a perspective view of another embodiment of a headrailbracket for retaining a motorized gearbox assembly within a headrail;

FIG. 21 is a perspective view of the headrail bracket of FIG. 20installed on a motorized gearbox assembly in accordance with theinvention;

FIG. 22 is another perspective view of the headrail bracket of FIG. 20installed on a motorized gearbox assembly in accordance with theinvention;

FIG. 23 is a perspective view of the headrail bracket of FIG. 20 used tostabilize a motorized gearbox assembly in accordance with the inventionwithin a headrail;

FIG. 24 is cutaway view of one embodiment of a pull cord designed topower a motorized gearbox assembly or charge a battery for powering amotorized gearbox assembly;

FIG. 25 is a perspective view of one embodiment of a switching mechanismto receive “cord gestures” from a user in a single direction;

FIG. 26 is a perspective view of one embodiment of a switching mechanismto receive “cord gestures” from a user in multiple directions;

FIG. 27 shows a graphical user interface for setting up and automatingwindow blinds in different rooms or spaces;

FIG. 28 shows a graphical user interface for creating a new room andestablishing a default closed and open position for window blindsassociated with the new room;

FIG. 29 shows a graphical user interface for monitoring a battery chargelevel for window blinds in a room;

FIG. 30 shows a graphical user interface for displaying a scheduleassociated with a window blind;

FIG. 31 shows a graphical user interface for scheduling an eventassociated with a window blind;

FIG. 32 shows a graphical user interface for setting up and changingsettings associated with a window blind;

FIG. 33 shows a graphical user interface for adjusting light settingsassociated with a window blind;

FIG. 34 shows a graphical user interface for adjusting room settings forwindow blinds in a room;

FIG. 35 shows a graphical user interface for establishing settingsassociated with an application;

FIG. 36 shows a graphical user interface for adding or editingaccessories associated with a room or window blind;

FIG. 37 is a high-level system view showing various components internalto and external to an automated window blind in accordance with theinvention;

FIG. 38 is a high-level view of the system of FIG. 37, particularlyshowing possible physical locations of various components described inassociation with FIG. 37;

FIG. 39 is a high-level view showing various modules providing differentfunctionality in the system of FIG. 37;

FIG. 40 is a perspective view of one embodiment of a specialized wallswitch in accordance with the invention;

FIG. 41 is a high-level view showing various components that may becontrolled by the specialized wall switch discussed in association withFIG. 40;

FIG. 42 shows one embodiment of a touchscreen providing functionalitysimilar to the specialized wall switch illustrated in FIG. 40;

FIG. 43 shows another embodiment of a touchscreen providingfunctionality similar to the specialized wall switch illustrated in FIG.40; and

FIG. 44 shows a technique or application for utilizing sensors of amobile device to determine a position and orientation of a window.

DETAILED DESCRIPTION

It will be readily understood that the components of the presentinvention, as generally described and illustrated in the Figures herein,may be arranged and designed in a wide variety of differentconfigurations. Thus, the following more detailed description of theembodiments of the invention, as represented in the Figures, is notintended to limit the scope of the invention, as claimed, but is merelyrepresentative of certain examples of presently contemplated embodimentsin accordance with the invention. The presently described embodimentswill be best understood by reference to the drawings, wherein like partsare designated by like numerals throughout.

Referring to FIG. 1, one example of a window covering 100, in thisexample a conventional window blind 100, is illustrated. As shown, thewindow blind 100 includes a headrail 104, containing various components,and slats 106. In the illustrated embodiment, the window blind 100 isretrofitted with a motorized gearbox assembly 102 configured toautomatically tilt the slats 106 of the window blind 100.

In order to retrofit the window blind 100 with a motorized gearboxassembly 102 in accordance with the invention, various components of thewindow blind 100 may be removed or replaced. For example, the manualtilt mechanism may be removed since it may interfere with operation ofthe motorized gearbox assembly 102. Similarly, a tilt wand or other tiltcontrols used in association with the manual tilt mechanism may beremoved. The tilt wand or other tilt controls may, in certainembodiments, be replaced with a specialized pull cord and switchingmechanism, the likes of which will be discussed in association withFIGS. 24 through 26. The specialized pull cord may, in certainembodiments, be used to control the motorized gearbox assembly 102 usingvarious “cord gestures.” The pull cord may also be configured to chargean internal battery and/or send data or commands to the motorizedgearbox assembly 102 through an electrical conductor and connectorintegrated therein.

In certain embodiments, the motorized gearbox assembly 102 may beconfigured to work alongside a manual tilt mechanism, thereby allowingthe slats 106 to be tilted manually with a tilt cord, tilt wand, or thelike, as well as automatically with the motorized gearbox assembly 102.This may involve replacing or modifying a conventional manual tiltmechanism with a manual tilt mechanism that is compatible with themotorized gearbox assembly 102. In other embodiments, the manual tiltmechanism and any associated tilt wand or cord may be removed completelysuch that the motorized gearbox assembly 102 has complete control overthe slat tilting feature of the window blind 100.

As further shown in FIG. 1, the motorized gearbox assembly 102 may beconfigured to engage and rotate a tilt rod 108 of the window blind 100in order to tilt the slats 106. As shown, the motorized gearbox assembly102 is positioned at an intermediate point along the tilt rod 108. Tofacilitate this, the motorized gearbox assembly 102 may be designed toenable the tilt rod 108 to pass completely through the motorized gearboxassembly 102. This feature is advantageous in that it enables themotorized gearbox assembly 102 to be placed at any point along the tiltrod 108, so long as it doesn't interfere or coincide with supportbrackets or other window blind components. This feature may also reduceor eliminate the need to cut or modify the tilt rod 108 to accommodatethe motorized gearbox assembly 102 within the headrail 104. Installingthe motorized gearbox assembly 102 may be accomplished by removing thetilt rod 108, placing the motorized gearbox assembly 102 at a desiredlocation within the headrail 104, and reinserting the tilt rod 108 suchthat it passes entirely or partially through the motorized gearboxassembly 102.

Referring to FIG. 2, a perspective view showing one embodiment of amotorized gearbox assembly 102 in accordance with the invention isillustrated. As shown, the motorized gearbox assembly 102 has asubstantially rectangular footprint to enable it to fit within aheadrail 104 of a window blind 100. An output shaft 200 of the motorizedgearbox assembly 102 engages and applies torque to a tilt rod 108. Anoutput port 204 allows the motorized gearbox assembly 102 to connect toa battery and other external equipment or sensors. In the illustratedembodiment, the motorized gearbox assembly 102 includes a two piecehousing 202 a, 202 b, namely a lower housing component 202 b and anupper housing component 202 a, that enclose various internal components.In the illustrated embodiment, the upper housing component 202 aincorporates a pair of mounting fixtures 206 to engage a headrailbracket, the likes of which will be discussed in association with FIG.3.

Referring to FIG. 3, one embodiment of a headrail bracket 300 for usewith a motorized gearbox assembly 102 in accordance with the inventionis illustrated. The headrail bracket 300 attaches to the mountingfixtures 206 previously discussed. The headrail bracket 300 isconfigured to be inserted into the headrail 104 at an angle (compared toits eventual orientation) from a top of the headrail 104. The lowprofile of the headrail bracket 300 allows the headrail bracket 300 tobe angled and inserted in this manner. Once within the headrail 104, theheadrail bracket 300 may be repositioned to span the top of the headrail104. A pair of flanges 302 on the headrail bracket 300 may engage (e.g.,snap into) corresponding lips or grooves on each side of the headrail104. The headrail bracket 300 substantially stabilizes the motorizedgearbox assembly 102 within the headrail 104 and keeps the motorizedgearbox assembly 102 from rotating or moving when applying torque to thetilt rod 108.

One advantage of the headrail bracket 300 illustrated in FIG. 3 is thatit maintains the motorized gearbox assembly 102 at a substantiallyconsistent position relative to a top of the headrail 104. The instantinventors have found that although different depths and dimensions ofheadrails 104 may be used with different window blinds 100, the tilt rod108 may nevertheless be positioned substantially consistently relativeto a top of the headrail 104. The headrail bracket 300, because it ismounted to a top of the headrail 104, may ensure that the motorizedgearbox assembly 102 is attached to the headrail 104 in a way that itconsistently aligns with the tilt rod 108.

Referring to FIG. 4, various internal components within the motorizedgearbox assembly 102 are illustrated. As shown, the motorized gearboxassembly 102 includes a motor 400 and a power transmission system 402having one or more stages of gears to reduce the gear ratio of the motor400. In certain embodiments, the gear ratio may be between 100:1 and1000:1. The instant inventors have found that a gear ratio of 720:1(i.e., seven hundred and twenty turns of the motor 400 produces a singleturn of the output shaft 200) works well in the present application. Asshown, the power transmission system 402 drives a main gear 406 coupledto the output shaft 200. The output shaft 200 may, in turn, be used todrive the tilt rod 108.

As shown, the output shaft 200 extends the length of the motorizedgearbox assembly 102. The output shaft 200 includes a through-channel408, extending the length of the output shaft 200, to enable the tiltrod 108 to pass therethrough. This through-channel 408 (along with anyrequired adapter inserts) may be keyed to enable the output shaft 200 tointerlock with and apply torque to the tilt rod 108. The output shaft200 may ride on bearing surfaces at each end of the motorized gearboxassembly 102.

As shown, the motorized gearbox assembly 102 includes a circuit board404. Electronics (e.g., processor, memory, communication modules, etc.)to control the motor 400 and/or gather data associated with themotorized gearbox assembly 102 may reside on the circuit board 404. Suchelectronics, as well as code executing on such electronics, will bediscussed in greater detail in association with FIGS. 37 through 39.FIG. 5 shows the motorized gearbox assembly 102 of FIG. 4 with most ofthe output shaft 200 removed. As shown, the lower housing component 202b includes a bearing surface 500 to support the output shaft 200. FIG. 6shows a top view of the motorized gearbox assembly 102 of FIG. 4. Asshown in FIG. 6, the output shaft 200 is offset somewhat relative to acenterline of the motorized gearbox assembly 102. This providesadditional space for the motor 400 and power transmission system 402 onone side of the output shaft 200. This may also more accurately alignthe motorized gearbox assembly 102 with off-center tilt rods 108 of manyconventional window blinds 100. FIG. 7 shows the same internalcomponents of the motorized gearbox assembly 102 as FIG. 5 from adifferent perspective, particularly showing additional detail of thepower transmission system 402.

Referring to FIG. 8, an end of the motorized gearbox assembly 102 isillustrated. In certain embodiments, the motorized gearbox assembly 102is configured to operate with different types of tilt rods 108, whichmay have different diameters and cross-sectional shapes. To accommodatevarying tilt rods 108, different adapter inserts 800 may be used withthe motorized gearbox assembly 102. These adapter inserts may have anexternal shape that interlocks with an internal shape of the outputshaft 200, and an internal shape that interlocks with an external shapeof a specific tilt rod 108. In certain embodiments, the internal shapeof the output shaft 200 is configured to interlock with a largerdiameter tilt rod 108 and the adapter inserts 800 are used to reduce thesize of the through-channel 408 and interlock with smaller diameter tiltrods 108 with the same or a different cross-sectional shape. In otherembodiments, the internal shape of the output shaft 200 is not designedto interlock with any type of tilt rod 108. Instead, adapter inserts 800may be used for all types of tilt rods 108. In such embodiments, theinternal shape of the output shaft 200 is used primarily to interlockwith different adapter inserts 800. FIGS. 9 and 10 show two differenttypes of adapter inserts 800 configured to interlock with two differenttypes of tilt rods 108.

In certain embodiments, the internal shape of the output shaft 200provides a backing surface that an adapter insert 800 may rest againstwhen inserted into the output shaft 200. This allows the adapter insert800 to sit substantially flush with the output shaft 200 and ensuresthat the adapter insert 800 cannot be pushed into the output shaft 200further than necessary. In certain embodiments, a retention feature(such as a snapping mechanism, etc.) may be provided to retain theadapter insert 800 in the output shaft 200. FIGS. 9 and 10 showdifferent embodiments of adapter inserts 800 having a retention feature900 configured to engage a corresponding retention feature within theoutput shaft 200. In these examples, the retention feature 900 is aresilient arm that deflects when the adapter insert 800 is inserted intoan output shaft 200 or removed from the output shaft 200. This resilientarm may engage a groove or depression in the output shaft 200 to keepthe adapter insert 800 retained therein.

Referring to FIG. 11, another embodiment of a motorized gearbox assembly102 in accordance with the invention is illustrated. This embodimentuses a multi-wall design to reduce noise produced by the motorizedgearbox assembly 102, as well as increase the gearbox's rigidity andprovide other benefits. Like the previous embodiments, the motorizedgearbox assembly 102 includes both an upper housing component 202 a anda lower housing component 202 b. As will be discussed in more detailhereafter, this embodiment uses a different type of headrail bracket 300to stabilize the motorized gearbox assembly 102 within a headrail 104 ofa window blind 100.

Referring to FIG. 12, a perspective view of various internal componentsof the motorized gearbox assembly 102 is illustrated. As shown, themotorized gearbox assembly 102 includes an internal wall 1200, enclosinggears of the gearbox 102, and an external wall 1202 that encloses theinternal wall 1200 and creates a cavity 1204 between the internal wall1200 and the external wall 1202. The cavity 1204 is used to accommodatethe circuit board 404 and motor 400 previously described. As furtherillustrated in FIG. 12, the external wall 1202 is configured to support,by way of a bearing surface, an output shaft 200 extending from theinternal wall 1200.

The multi-wall design illustrated in FIG. 12 provides various advantagescompared to the single-wall design illustrated in FIGS. 4-7. Forexample, the multi-wall design reduces noise compared to the single walldesign. Specifically, the internal wall 1200 provides an extra layer ofsound dampening that reduces noise from the power transmission system402 (e.g., gear trains) and other internal components. In certainembodiments, the internal wall 1200 is filled with a sound-dampeningmaterial, such as a grease, that may also serve to lubricate the powertransmission system 402. The internal wall 1200 may isolate the powertransmission system 402 (and any grease or other lubricant) from othercomponents, such as the motor 400 or circuit board 404, inside themotorized gearbox assembly 102.

The internal wall 1200 may also reduce noise by increasing rigiditywithin the motorized gearbox assembly 102. For example, instead ofclamping the shaft of each gear between two pieces (which may, when thegears are under load, urge the pieces to separate), the pins for gearswithin the internal wall 1200 may be inserted through holes in amonolithic component. When the gears are under load, these holes willstabilize the pins on which the gears rotate and prevent undesired playbetween the gears. This will, in turn, reduce noise produced by thegears when under load. The internal wall 1200 may also reduce noise bycreating a smaller resonating chamber for the power transmission system402. The instant inventors have found that the multi-wall designillustrated in FIG. 12 may reduce noise by approximately four timescompared to single-wall designs that clamp the gear pins between twocomponents (e.g., two housing components).

FIGS. 13 and 14 show the interior of the motorized gearbox assembly 102of FIG. 12 from two additional angles, particularly showing the oppositeend of the output shaft 200 and an adapter insert 800. As shown in FIGS.13 and 14, the internal wall 1200 may, in certain embodiments, besegmented to allow the gears and pins of the power transmission system402 to be assembled using through-holes in the internal wall 1200, aspreviously described. In certain embodiments, the power transmissionsystem 402, including the internal wall 1200, may be assembled andinserted into the external wall 1202 along with other components, suchas the circuit board 404.

Referring to FIG. 15, another view of internal components of themotorized gearbox assembly 102 is illustrated, however with the circuitboard 404 removed. From this view, a position encoder 1500 is visiblebelow the internal wall 1200. In order to determine the angle orposition of slats 106 at any given time, systems and methods are neededto track the number of rotations and/or angular position of the outputshaft 200. A position encoder 1500 may be provided to measure the numberof rotations and/or angular position. In certain embodiments, a countermay be maintained in memory (e.g., non-volatile memory on the circuitboard 404) to keep track of the number of rotations as well as thecurrent angular position of the position encoder 1500. Using calibrationtechniques, which will be explained in more detail hereafter, themotorized gearbox assembly 102 may translate the number of rotations andangular position of the position encoder 1500 into an angular positionof the window blind's slats 106, thereby allowing the motorized gearboxassembly 102 to know the current angular position of the slats 106 atall times. As will be further explained, the motorized gearbox assembly102 may use the position encoder 1500 as well as a current sensor toestimate the size of the window blind 100 and/or ensure that excessiveforce is not applied to the remaining tilt components (e.g. taperoll/drum) of the window blind 100.

Various types of position encoders 1500 may be used in the motorizedgearbox assembly 102. In one embodiment, the position encoder 1500 is arotary resistive position encoder. In another embodiment, as shown inFIG. 15, the position encoder 1500 is a rotary magnetic position encoder1500. Such a rotary magnetic position encoder 1500 may include adiametrically polarized magnet 1502 that is driven by the output shaft200. The magnet's rotational position may be monitored by a magneticresolver 1504. Such an embodiment may be advantageous in that nomechanical shaft may be needed to turn a physical wiper, as requiredwith a resistive encoder. Rather, the angular position may bemagnetically communicated to a contactless sensor 1504 located proximatethereto. Also, unlike a resistive encoder, a magnetic encoder 1500 mayhave no “dead band” (i.e., a portion of the rotation where the internalwiper is no longer connected to an internal resistive element).

Referring to FIG. 16, another view of internal components of themotorized gearbox assembly 102 is illustrated. In this view, the circuitboard 404 and various segments of the internal wall 1200 have beenremoved to provide an enhanced view of the position encoder 1500 as wellas mechanisms that are used to drive the position encoder 1500. As shownin FIG. 16, in certain embodiments, the position encoder 1500 is drivendirectly by the output shaft 200. For example, as can be observed inFIG. 16, a main gear 406 coupled to the output shaft 200 directly drivesa gear 1600 coupled to the position encoder 1500. In the illustratedexample, the smaller size of the gear 1600 compared to the main gear 406ensures that the position encoder 1500 rotates substantially faster thanthe output shaft 200. The instant inventors have found that driving theposition encoder 1500 with the output shaft 200 reduces inaccuracy (dueto slop, play, or the like) that may otherwise occur by driving theposition encoder 1500 with gears further back in the drive train. Theinstant inventors have also found that driving the position encoder 1500with the main gear 406 provides sufficient data resolution to accuratelydetermine and track the angular position of the slats 106. FIG. 17 showsanother view of the position encoder 1500 with the lower housing 202 bremoved.

Referring to FIGS. 18 and 19, several views of the interior of themotorized gearbox assembly 102 are illustrated, with much of theinternal wall 1200 removed. These views show gears of the powertransmission system 402, including the main gear 406, as well as theoutput shaft 200 passing through the internal wall 1200. One advantageof the multi-wall design discussed in association with FIG. 12-19 isthat it allows cheaper gears (e.g., plastic gears as opposed to metal,molded gears as opposed to machined gears, etc.) to be used withoutsignificantly increasing noise produced by the motorized gearboxassembly 102. That is, the multi-wall design may provide sufficientsound dampening to mitigate additional noise created by lower tolerancecomponents. In certain embodiments, vibration-dampening materials (e.g.,rubber, foam, elastomers, etc.) may be placed between the motor 400 andinternal wall 1200 and the external wall 1202 to ensure that anyvibrations produced by the motor 400 and power transmission system 402are not transmitted to the external wall 1202. This will also reducenoise.

Referring to FIG. 20, another embodiment of a headrail bracket 300 foruse with a motorized gearbox assembly 102 in accordance with theinvention is illustrated. In this embodiment, the headrail bracket 300is embodied as a two-piece bracket 300 configured to secure or stabilizeeach end of the motorized gearbox assembly 102 with respect to theheadrail 104. A first component 2000 a is configured to secure a firstend of the motorized gearbox assembly 102 to the headrail 104, and asecond component 2000 b is configured to secure a second end of themotorized gearbox assembly 102 to the headrail 104. Like the examplediscussed in association with FIG. 3, the headrail bracket 300illustrated in FIG. 20 may be designed so that it may be inserted intothe headrail 104 at an angle and then repositioned to align with theheadrail 104.

When aligned, flanges 2002 may sit within a corresponding lip 2300 orgroove 2300 of the headrail 104 (as shown in FIG. 23). Once aligned withthe headrail 104, the headrail bracket components 2000 a, 2000 b mayslide over the ends of the motorized gearbox assembly 102 to secure orstabilize the motorized gearbox assembly 102 relative to the headrail104. In certain embodiments, the headrail bracket 300 is fabricated froman elastomeric material, such as rubber, to allow the headrail bracket300 to be flexed into position within the headrail 104, as well as allowthe headrail bracket 300 to grip and conform around the motorizedgearbox assembly 102. Nevertheless, other materials such as plastic ormetal may also be used to fabricate the headrail bracket 300.

FIGS. 21 and 22 show opposing views of the headrail bracket 300 of FIG.20 installed on the motorized gearbox assembly 102. As can be observed,the headrail bracket 300 may conform to the outer contour of themotorized gearbox assembly 102. FIG. 23 shows a motorized gearboxassembly 102 secured within a headrail 104 using the headrail bracket300. As can be observed, flanges 2002 of the headrail bracket 300 sitwithin lips 2300 or grooves 2300 of the headrail 104 to retain orstabilize the motorized gearbox assembly 102 within the headrail 104.

Referring to FIG. 24, in certain embodiments in accordance with theinvention, a specialized pull cord 110 may be used with the motorizedgearbox assembly 102. This pull cord 110 may be used to receive “cordgestures” from a user. For the purpose of this disclosure, “cordgestures” are movements or manipulations of the pull cord 110 such aspull sequences, pull durations, numbers of pulls, durations betweenpulls, strength of pulls, and combinations thereof. As an example, afirst cord gesture (e.g., two quick pulls of the pull cord 110) may beused to open a window blind 100 and a second cord gesture (e.g., asingle quick pull of the pull cord 110) may be used to close a windowblind 100. In another example, pulling and holding the pull cord 110 maycause the slats 106 to tilt back and forth in continuous successionuntil the pull cord 110 is released. A controller on the circuit board404 may translate the cord gestures into commands for controlling themotorized gearbox assembly 102. The pull cord 110 may be any suitablelength. In certain embodiments, the length of the pull cord 110 isreduced to less than twelve inches, and in some instances less than sixinches, to prevent tangling and/or hazards to children or pets.

In cases where the length of the pull cord 110 is reduced, a hook 2404,loop 2404, or other attachment element 2404 may be incorporated into anend 2402 of the pull cord 110 to allow a rod, wand, cord, or otherextension member to connect to, latch on to, or grasp the end 2402 ofthe pull cord 110. This may allow a user to physically manipulate (tug,twist, etc.) the pull cord 110 even if the user cannot physically reachthe pull cord 110. It may also different styles (e.g., lengths, colors,physical configurations, etc.) of extension members to be used with thewindow blind 100

As shown in FIG. 24, an electrical conductor and connector may, incertain embodiments, be incorporated into the pull cord 110. This mayallow data and/or power to be conveyed to the motorized gearbox assembly102 through the pull cord 110. In certain embodiments, a battery forpowering the motorized gearbox assembly 102 may be charged through thepull cord 110. This may be accomplished, for example, by plugging an ACwall adapter into the connector 2400. Any suitable connector 2400 may beused, including but not limited to USB, mini-USB, micro-USB, barrelconnectors, or the like. USB-based connectors may be advantageous inthat USB wall adapters or power sources may provide a known voltage tothe battery.

Referring to FIG. 25, one embodiment of a switching mechanism 2500 forconverting cord gestures into electrical signals is illustrated. Such aswitching mechanism 2500 may, in certain embodiments, be housed withinthe headrail 104 immediately above the pull cord 110. As shown, theswitching mechanism 2500 includes a deflectable arm 2502 connected to acontact 2504. The pull cord 110 may be routed through or otherwiseconnected to the deflectable arm 2502. A chamfer 2508 or other surface2508 may prevent an undesirable bend or stress in the pull cord 110.When the pull cord 110 is tugged in a downward direction, thedeflectable arm 2502 will deflect to move the contact 2504 toward alower contact 2506. Upon touching, a connection will occur and anelectrical signal will be transmitted between the contacts 2504, 2506.In this way, cord gestures may be converted to electrical signals forcontrolling the motorized gearbox assembly 102.

Referring to FIG. 26, in certain embodiments, a switching mechanism 2500in accordance with the invention may be designed to understand cordgestures in multiple directions. That is, instead of simplyunderstanding pulls in a downward direction, the switching mechanism2500 may be designed to understand and differentiate side-to-sidemovement, up-and-down movement, and/or combinations thereof. Forexample, a pull to one side may be configured to cause a window blind100 to open whereas a pull to the opposite side may cause the windowblind 100 to close.

Like the switching mechanism 2500 discussed in association with FIG. 25,the switching mechanism 2500 of FIG. 26 includes a deflectable arm 2502and first and second contacts 2504, 2506. These elements 2502, 2504,2506 may be used to covert downward motion of the pull cord 110 intoelectrical signals. In addition, the switching mechanism 2500 of FIG. 26includes a slider 2600 to understand side-to-side motion. As shown, theslider 2600 includes a first contact 2602 a and a second contact 2602 b.Side-to-side movement of the pull cord 110 may likewise cause the slider2600 to move side-to-side. In certain embodiments, biasing members (notshown) such as springs may keep the slider 2600 substantially centeredbetween the contacts 2604 a, 2604 b when no force is applied.

When the slider 2600 is moved in a first direction (leftward in theillustrated embodiment) the contact 2602 a may touch the contact 2604 a,thereby converting leftward lateral movement of the pull cord 110 intoan electrical signal. Similarly, when the slider 2600 is moved in asecond direction (rightward in the illustrated embodiment) the contact2602 b may touch the contact 2604 b, thereby converting rightwardlateral movement of the pull cord 110 into an electrical signal. Using aswitching mechanism 2500 that can understand both vertical and lateralmovement of the pull cord 110, many more cord gestures and associatedcommands are possible.

In other or the same embodiments, the pull cord 110 may be replaced orsupplemented by buttons, a twist wand, a directional pad, or othercontrols, in order to control a window blind 100 or other windowcovering 100. For example, a twist wand may be used to control a windowblind 100 by twisting the wand, twisting and holding the wand, tuggingon the wand, or the like. Each of these actions may generate differentcommands to cause a window blind 100 or other window covering 100 toperform different functions, such as open or close. Physically pressingor manipulating buttons or a directional pad may also be used togenerate and send different commands to a window blind 100 or windowcovering 100. In certain embodiments, a pull cord 110 in accordance withthe invention may be eliminated altogether. Any charging port in thepull cord 110 may be incorporated into a twist wand, as described above,or incorporated directly into a headrail 104.

Referring generally to FIGS. 27 through 36, in certain embodiments inaccordance with the invention, an application may be provided thatallows a user to program the motorized gearbox assembly 102 to operatein a desired manner. For example, a user may want the motorized gearboxassembly 102 to open a window blind 100 at a specified time of day andclose the window blind 100 at another time of day. The application mayalso assist the user in programming multiple motorized gearboxassemblies 102. For example, a user's home or business may containmultiple window blinds 100 and it may be inefficient and time-consumingto individually program the motorized gearbox assemblies 102,particularly in cases where the user wants the motorized gearboxassemblies 102 to behave in a similar manner. In certain embodiments,the application may assist the user in programming multiple motorizedgearbox assemblies 102 as a group.

In certain embodiments, the application is configured to execute on auser's mobile device, such as a tablet or smart phone. FIGS. 27 through36 show various exemplary graphical user interface (GUI) pagesassociated with an application configured to execute on a mobile device.Nevertheless, in other embodiments, the application may be configured toexecute on a desktop computer, workstation, laptop, or other suitablecomputing device.

Referring to FIG. 27, one embodiment of a GUI page 2700 for setting upand automating window blinds 100 in various rooms of a home or businessis illustrated. When automating a home or business, multiple windowblinds 100 may be retrofitted with a motorized gearbox assembly 102 inaccordance with the invention. In many cases, individual rooms in thehome or business may contain multiple window blinds 100. In certaincases, a user may want all window blinds 100 in a home or business, orall window blinds 100 in a particular room of a home or business, to beprogrammed in the same or a similar manner. Similarly, when using manualcontrols to operate the window blinds 100, the user may wish to operateall window blinds 100 in a home or business, or in a room of the home orbusiness, as a group as opposed to individually.

FIG. 27 shows one embodiment of a “Rooms” page 2700 that enables a userto establish rooms in a home or business, as well as operate all windowblinds 100 in the home or business, or in a room of the home orbusiness, as a group. In the illustrated embodiment, buttons 2702 areprovided to represent the home or business, as well as each room thathas been established in the home or business. Selecting a button 2702may enable a user to configure the home or business, or a room in thehome or business, such as by adding window blinds 100 to the home,business, or particular room. For example, selecting the “All Blinds”button 2702 may allow the user to configure all window blinds 100associated with the home or business. Similarly, selecting the “LivingRoom” button 2702 may allow the user to configure window blinds 100 inthe user's living room. An “Add New Room” button 2704 may enable a userto add a new room to the list 2702.

As shown, various manual controls are provided on the “Rooms” page 2700.For example, an open button 2706 may cause all blinds in a home orbusiness, or a particular room in the home or business, to open.Similarly, a close button 2708 may cause all blinds in the home orbusiness, or the particular room in the home or business, to close. Thebuttons 2706, 2708 may be configured to operate in different ways. Forexample, pressing and holding the button 2706, 2708 may cause the slats106 of the window blinds 100 to tilt until the buttons 2706, 2708 arereleased. This would allow various intermediate tilt positions or anglesto be achieves. By contrast, single or double clicking a button 2706,2708 may cause the slats 106 of the window blinds 100 to open or closecompletely without having to hold down the corresponding buttons 2706,2708. This is simply an example of possible operation and is notintended to be limiting.

Referring to FIG. 28, one embodiment of a “Create New Room” page 2800 isillustrated. Such a page 2800 may be displayed upon selecting the “AddNew Room” button 2704 discussed in association with FIG. 27. As shown,the “Create New Room” page 2800 enables a user to designate a room name(e.g., “Front Room”) in a field 2808, as well as designate a defaultopen and closed position for window blinds 100 associated with the room.As shown in FIG. 28, slider buttons 2802 are provided to enable the userto establish the open and closed positions for the window blinds 100. Incertain embodiments, window blind depictions 2806 adjacent to thebuttons 2802 are animated in response to movement of the slider buttons2802. That is, as the slider buttons 2802 are moved up or down, thewindow blind depictions 2806 appear to open and/or close to reflect theactual position of the slats 106. Once a room is named and the defaultopen and closed positions are established, a “Create Room” button 2804may be selected to create the room. This will, in turn, cause the roomto be added to the list 2702 illustrated in FIG. 27.

Referring to FIG. 29, one embodiment of a page 2900 for configuring aroom is illustrated. Such a page, for example, may be displayed inresponse to selecting one of the buttons 2702 illustrated in FIG. 27.This page 2900 may enable a user to add, delete, modify, or monitorwindow blinds 100 associated with a particular room or space. In theillustrated example, the room “Living Room” includes three window blinds100, namely “Bay Left,” “Bay Right,” and “Bay Center.” Indicators areprovided to show a battery charge level associated with each of thewindow blinds 100. As further shown, each of the window blinds 100includes a button/indicator 2902. In certain embodiments, the outer ringmay indicate weather the window blind 100 is online and connectedwhereas the inner circle may enable a user to select the window blind100 so that it can be controlled and/or configured. For example, uponselecting one or more window blinds 100 in the list, a slider button2904 may enable the window blinds 100 to be manually opened or closed bymoving the slider button 2904.

Various different buttons for configuring the window blinds 100 areshown at the bottom of the page 2900. For example, a button 2906 may beselected to configure a window blind 100 or a group of window blinds 100to operate in accordance with sensed lighting conditions. For example, auser may want a window blind 100 or a group of window blinds 100 to openat sunrise and/or close at sunset. Selecting the button 2906 may open upa page that enables the user to configure the window blinds 100 in sucha manner. One embodiment of such a page is illustrated in FIG. 33.

Similarly, a button 2908 may be selected to configure a window blind 100or a group of window blinds 100 to operate in accordance with a definedschedule. For example, a user may want a window blind 100 or a group ofwindow blinds 100 to open and/or close at designated times. In certainembodiments, different open/close times may be established for differentdays of the week. Selecting the button 2908 may open up a page thatenables the user to configure the window blinds 100 to operate inaccordance with the established schedule. One embodiment of such a pageis illustrated in FIG. 30.

Referring to FIG. 30, one embodiment of a page 3000 for establishing aschedule for a window blind 100 or a group of window blinds 100 isillustrated. In the illustrated embodiment, a time line 3010 is providedfor each day of the week. A user may establish different types of events3014 on the time line 3010. For example, a user may wish to establish anopen event 3014 at a designated time and a close event 3014 at adifferent designated time. For example, as shown in the illustratedembodiment, an open event 3014 is established at 7:15 AM and a closeevent 3014 is established at 9:30 AM. In certain embodiments, events3014 may also be established for states other than open/close states.For example, a user may want a window blind 100 or a group of windowblinds 100 to be fifty percent (or some other percentage) open at adesigned time. In the illustrated embodiment, a partial open event 3014is established at 8:30 AM.

In certain embodiments, each time line 3010 may have a status bar 3012associated therewith. This status bar 3012 may show a status of a windowblind 100 or a group of window blinds 100 during different time periods.For example, the color white on the status bar 3102 may indicate that awindow blind 100 or group of window blinds 100 is open over theindicated time period. Similarly, the color black may indicate that thewindow blind 100 or group of window blinds 100 is closed during theindicated time period. Shades of grey may indicate a state of partialopenness, the degree of which may be indicated by the shade.

In certain embodiments, a gradual change in color along the status bar3012 may indicate that a window blind 100 or group of window blinds 100is gradually opening or closing over the indicated time period. Forexample, as can be observed in FIG. 30, a window blind 100 or group ofwindow blinds 100 is partially open until 7:15 AM, at which time theycompletely open. The window blind 100 or group of window blinds 100 thengradually close until they reach a designated state of partial opennessat 8:15 AM. The window blind 100 or group of window blinds 100 graduallycontinue to close until they are completely closed at or around 9:30 AMand thereafter. In certain embodiments, an event 3014 may indicate whenan operation (open, close, etc.) begins. In other embodiments, an event3014 may indicate when an operation ends. In yet other embodiments, anoperation may be centered with respect to an event 3014 such that theoperation may begin before the designate event time and end after thedesignated event time.

In certain embodiments, creating an event 3014 may be as easy asselecting an area on a time line 3010 where an event 3014 is desired tobe placed. A page or menu may appear that allows the user to establishdetails or settings for the event 3014. Similarly, selecting ormanipulating an already existing event 3014 may allow details orsettings associated with the event 3014 to be changed. In certainembodiments, a time or day associated with an event 3014 may be changedby simply selecting and dragging the event 3014 to a desired time or dayon the page 3000. Other techniques for creating, modifying, or deletingevents 3014 may be used and are within the scope of the invention.

Referring to FIG. 31, one embodiment of a page 3100 for creating ormodifying an event 3014 is illustrated. In this embodiment, atime-selection feature 3102 enables a user to specify a desired time foran event 3014. Similarly, a position-selection feature 3104 enables auser to specify a desired position for a window blind 100 or group ofwindow blinds 100 for an event 3014. This position-selection feature 310may, in certain embodiments, enable a user to select an open state,closed state, or an intermediate state associated with the event 3014.In certain embodiments, a slider button 3106 is provided to enable theuser to designate the position of the window blind 100 or group ofwindow blinds 100. A window blind graphic 3108 adjacent to the button3106 may be animated in response to movement of the slider button 3106to show a position of the window blind 100 or group of window blinds100.

In certain embodiments, the page 3100 may also enable a user todesignate how fast a window blind 100 or group of window blinds 100opens or closes in association with a particular event 3014. Forexample, a user may want a window blind 100 or group of window blinds100 to open or close over a designated period of time (e.g., 10 minutes,30 minutes, an hour, etc.) instead of opening or closing in an abruptmanner. This may provide a more aesthetically pleasing way to operatethe window blinds 100 and/or enable window blinds 100 to operategradually to mirror or reflect the gradual movement of the sun. This mayalso maximize the amount of sunlight that is allowed to enter a roomwhile at the same time preventing direct sunlight and associated damageon furniture, rugs, or other objects, even as the angle of incidence ofthe sun changes throughout the day. In certain embodiments, a button3110 (e.g., a “soft close” button 3110) may be provided to enable thisfeature. Similarly, in certain embodiments, a slider button 3112 (orother feature such as an input field) may be provided to enable a userto establish how long it takes for a window blind 100 or group of windowblinds 100 to transition between states.

Referring to FIG. 32, one embodiment of a page 3200 for establishingvarious details for a window blind 100 is illustrated. As shown, thepage 3200 includes a field 3202 for designating or changing a name of awindow blind 100. In certain embodiments, descriptive names may bechosen to assist a user in differentiating window blinds 100 from oneanother. A button 3204 may be selected to configure a window blind 100to operate in accordance with sensed lighting conditions, such as byopening in response to sunrise and closing in response to sunset. Oneembodiment of a page for configuring a window blind 100 in this mannerwill be discussed in association with FIG. 33.

A button 3206 may be configured to display information regarding energyand usage associated with a window blind 100. For example, selecting thebutton 3206 may enable a user to view a battery charge level, anestimated time that a battery charge will be depleted, usage patterns orparticular instances of operation of the window blind 100, or the like.

A button 3208 may enable a user to configure expansion ports or devicesconnected to expansion ports of the window blind 100. For example, incertain embodiments, sensors such as temperature sensors, securitysensors, or the like, may be connected to various expansions ports of awindow blind 100 to allow the window blind 100 to provide additionalfeatures and functions. The button 3208 may present a screen or pagethat allows these expansion ports or devices to be configured.

An “identify blind” button 3210 may assist a user in identifying thewindow blind 100 identified in the field 3202. For example, selectingthe button 3210 may cause the window blind 100 to physically move orperform some other function to allow the user to determine whichphysical window blind 100 corresponds to the window blind 100 identifiedin the application. This may be helpful in situations where a room,home, or business contains multiple window blinds 100 and the user isunsure which physical window blinds 100 correspond to the blind nameslisted in the application.

A “reverse rotation” button 3212 may enable functions of a motorizedgearbox assembly 102 to be reversed. For example, if a motorized gearboxassembly 102 is installed in a window blind 100 in the wrong (oropposite) direction, the application may allow functions of themotorized gearbox assembly 102 to be reversed instead of requiringremoval of the window blind 100 and reinstallation of the motorizedgearbox assembly 102 in the opposite direction. Thus, the “reverserotation” button 3212 may in certain cases save significant amounts oftime and make installation of the motorized gearbox assembly 102substantially fool-proof

A firmware update button 3214 may enable a user to update firmware onthe motorized gearbox assembly 102. One benefit of the motorized gearboxassembly 102 compared to conventional window covering automation systemsis the smart technology built into the motorized gearbox assembly 102.Instead of simply receiving and executing commands, the motorizedgearbox assembly 102 may have processing capability that allows it toprovide additional functionality. For example, in certain embodiments,the motorized gearbox assembly 102 may interface with security sensorsfor use in a security system, or temperature or humidity sensors for usein a climate-control or HVAC system. The firmware update button 3214 mayenable updated firmware to be loaded (e.g., wirelessly loaded) onto themotorized gearbox assembly 102 to either improve existing functionalityor expand the functionality of the motorized gearbox assembly 102.

Referring to FIG. 33, one embodiment of a page 3300 for establishinglight settings for a window blind 100 or a group of window blinds 100 isillustrated. Such a page 3300 may be displayed in response to selectingthe button 2906 discussed in association with FIG. 29 or selecting thebutton 3204 discussed in association with FIG. 32. The page 3300 mayenable a window blind 100 a group of window blinds 100 to be configuredto operate in accordance with sensed lighting conditions. When workingwith a group of window blinds 100, the group may, in certainembodiments, be configured to operate from a single light sensor(possibly a light sensor in single window blind 100 or an external lightsensor) in order to substantially synchronize the window blinds 100. Inother embodiments, each window blind 100 in the group may operate inaccordance with sensed lighting conditions from its own light sensor.

As shown in FIG. 33, in certain embodiments, the page 3300 may include abutton 3302 to configure a window blind 100 or group of window blinds100 to automatically open at sunrise. In certain embodiments, a sliderbutton 3306 may be provided to set the window blind position at sunrise.This may allow the window blind 100 or group of window blinds 100 to becompletely or partially opened at sunrise. A window blind graphic 3310adjacent to the button 3306 may visually open or close in response tomovement of the slider button 3306 to show a position of the windowblind 100 and/or group of window blinds 100.

Similarly, a button 3304 may be provided to configure a window blind 100or group of window blinds 100 to automatically close at sunset. A sliderbutton 3308 may, in certain embodiments, be provided to set a desiredwindow blind position at sunset. This may allow the window blind 100 orgroup of window blinds 100 to be completely or partially closed atsunset. A window blind graphic 3312 adjacent to the button 3308 mayvisually open or close in response to movement of the slider button 3308to show a position of the window blind 100 and/or group of window blinds100.

Referring to FIG. 34, one embodiment of a page 3400 for establishingsettings associated with a room is illustrated. Such a page 3400 may bedisplayed, for example, in response to selecting the button 2702discussed in association with FIG. 27. The page 3400 may also, incertain embodiments, be displayed in response to selecting the “add newroom” button 3704 discussed in association with FIG. 27. As shown, thepage 3400 includes a field 3402 to create or edit a room name associatedwith a particular room or space. The page 3400 also allows default openand closed positions to be established for window blinds 100 associatedwith a room. In the illustrated example, slider buttons 3306, 3308 areprovided to establish the default open and closed positions. Similarly,blind graphics 3310, 3312 may be provided to visually represent thedefault open and closed positions. When an open or close button 2706,2708 is selected for a room, as previously discussed in association withFIG. 27, the window blinds 100 in the room may be opened or closed inaccordance with the default positions.

Referring to FIG. 35, one embodiment of an “app settings” page 3500 isillustrated. In the illustrated embodiment, the page 3500 includes a“set up accessories” button 3502, “share app profile” button 3504,account button 3506, “show help bubbles” 3508, and “reset app” button3510. These buttons are provided by way of example and are not intendedto be limiting.

A “setup accessories” button 3502 may be provided to set up accessoriesrelated to a window blind 100 or a group of window blinds 100. Suchaccessories may include, for example, a wall switch configured tocontrol window blinds 100, a USB or HDMI dongle configured to controlwindow blinds 100, a temperature sensor connected to a window blind 100,a security sensor connected to a window blind 100, or the like. A page3600 for setting up such accessories will be discussed in associationwith FIG. 36.

A “share app profile” button 3504 may enable settings established on afirst device (e.g., smart phone, tablet, laptop, etc.) to be mirrored toa second device (e.g., smart phone, tablet, laptop, etc.). For example,if a large number of window blinds 100 have been set up, named, andconfigured on a first device, the “share app profile” button 3504 mayallows these setting to be mirrored to a second device without having toonce again set up, name, and configure the window blinds 100.

An account button 3506 may be used to establish a username, password,user preferences, and other account-related information associated witha user. In certain embodiments, a “show help bubbles” button 3508 maycause the application to display help information for screens, buttons,or other features or functionality in the application. These “helpbubbles” may be displayed, for example, when a user touches, hoversover, or otherwise selects different screens, buttons, or features inthe application. A “reset app” button 3510 may enable a user to resetthe application. In certain embodiments, this may erase window blind andother configuration information in the application, thereby allowing theuser to start anew.

Referring to FIG. 36, one embodiment of a page 3600 for managingaccessories related to a window blind 100 or a group of window blinds100 is illustrated. In this example, the page 3600 shows a list of “wallswitches” and “TV adapters.” In certain embodiments, a window blind 100or group of window blinds 100 may be controlled (e.g., wirelesslycontrolled) by a wall switch, such as a specialized wall switch. Oneembodiment of such a specialized wall switch will be discussed inassociation with FIG. 40. Such a wall switch may, in certain cases, beused in place of or in addition to the manual controls provided by theapplication. As shown, the page 3600 may enable new wall switches to beadded to the system as well as editing of existing wall switches.

Similarly, the page 3600 allows “TV adapters” to be added to the systemor existing TV adapters to be edited. In certain embodiments, a windowblind 100 or a group of window blinds 100 may be controlled by a videodisplay adapter, such as a USB or HDMI dongle plugged into a USB or HMDIport of a video display. Such a video display adapter may be configuredto generate a signal when a video display (e.g., a television,projector, etc.) is turned on or off. That is, the window blind 100 orgroup of window blinds 100 may automatically open or close in responseto receiving the signal. This may allow a room or space to beautomatically darkened when a television, projector, or other mediadevice is turned on, and automatically lightened when the television,projector, or other media device is turned off. As shown, the page 3600may enable new TV adapters to be added to the system as well as editingof existing TV adapters.

Referring to FIGS. 37 and 38, a high-level system view showing variouscomponents internal to and external to a window blind 100 isillustrated. Various of the components (e.g., controller 3702,communication module 3700, motor driver 3704, etc.) shown inside thewindow blind 100 may be implemented within the motorized gearboxassembly 102, such as on the circuit board 404 or within the housing 202of the motorized gearbox assembly 102, although this is not necessary inall embodiments. Other components (e.g., battery 3710) may beimplemented outside of the motorized gearbox assembly 102 but within theheadrail 104 of the window blind 100. Yet other components (lightsensors 3716, temperature sensors 3718, security sensors 3720, solarcell 3712 etc.) may be implemented outside of the headrail 104 of thewindow blind 100. For example, a temperature sensor 3718 or securitysensor 372 may be mounted to a window and connected to the controller3702 (using, for example, wires routed through the headrail 104).Nevertheless, the location and placement of the components illustratedin FIG. 37 may vary in different embodiments and is not intended to belimiting.

As shown, an automated window blind 100 outfitted with a motorizedgearbox assembly 102 in accordance with the invention may include one ormore of the following: a communication module 3700, controller 3702,motor driver 3704, servo control module 3705, input device(s) 3706,output device(s) 3708, battery 3710, and charging module 3712. Thewindow blind 100 may also include one or more sensors 3714, such as aposition encoder 1500, light sensor 3716, temperature sensor 3718,security sensor 3720, safety sensor 3722, and current/voltage sensor3724. The manner in which the various components of the window blind 100are used will be discussed in more detail hereafter.

A communication module 3700 may enable wireless communication betweenthe window blind 100 and external devices. In one embodiment, thecommunication module 3700 includes a Bluetooth chip that allows thewindow blind 100 to communicate with an external computing device 3740,wall switch 3754, video display adapter 3750, home automation controller3746, or the like, using Bluetooth signals. In other embodiments, thecommunication module 3700 enables communication using othercommunication protocols, such as WIFI, Z-Wave, Zigbee, or the like. Incertain embodiments, a bridge may be used to enable translation andcompatibility between different communication protocols.

The communication module 3700 may also, in certain embodiments, act as arepeater to repeat signals to other devices. This may allow thecommunication module 3700 (and associated window blind 100) to form partof a mesh network of interconnected devices. In some cases a windowblind 100 may originate signals that are used to control other devices.For example, a temperature sensor 3718 connected to a window blind 100may measure temperature at or near a window. The measured temperaturemay be transmitted to a thermostat 3756 or other device to makeadjustments to an HVAC system. Additionally, or alternatively, commandsmay be sent directly to an HVAC system to make adjustments thereto.Thus, in certain embodiments, the communication module 3700 mayoriginate signals that are used to control devices external to thewindow blind 100.

A controller 3702 may be configured to control the window blind 100 andperform other functions, such as gathering information at or near thewindow blind 100, controlling devices external to the window blind 100,receive and execute commands from devices external to the window blind100, and the like. As can be appreciated by those of skill in the art,the controller 3702 may be programmable and may include a processor andmemory to store and execute program code. As was discussed inassociation with FIGS. 27 through 36, the controller 3702 may beprogrammed to operate a window blind 100 in accordance with a designatedschedule or in response to sensed lighting conditions. Once programmed,the controller 3702 may operate the window blind 100 on its own withoutrequiring commands from external devices. The controller 3702 may alsobe configured to receive commands (e.g., open or close commands) from anexternal device such as a smart phone and operate the window blind 100accordingly. Thus, presence of the controller 3702 may enable theautomated window blind 100 to independently operate on its own (withoutcentralized control), or operate in response to commands from acentralized controller external to the window blind 100.

Control signals generated by the controller 3702 may be sent to a motordriver 3704 in order to operate the motor 400 previously discussed. Incertain embodiments, these control signals may be converted to modulatedcontrol signals using a suitable modulation technique (e.g., pulse-widthmodulation, or PWM). The modulated control signals may be sent to themotor driver 180 to operate the motor 54, which may in turn adjust theangular position of the window blind slats 106. In certain embodiments,a servo control module 3705 may provide feedback to the controller 3702regarding the angular position of the slats 106 (using the positionencoder 1500) relative to a desired angular position so that theoperation of the motor 400 can be adjusted accordingly. This may reduceerror between a desired angular position and an actual angular positionof the slats 106.

The window blind 100 may also include various input devices 3706 andoutput devices 3708. Input devices 3706 may include, for example,various sensors 3714 for gathering data in and around the window blind100. An input device 3706 may also, in certain embodiments, include anaudio sensor for receiving voice commands or other audible signals, suchas voice commands to open or close a window blind 100 or group of windowblinds 100. In certain embodiments, the pull cord 110 previouslydiscussed may function as an input device 3706 if the pull cord 110 isused to upload data to the motorized gearbox assembly 102. Other typesof input devices 3706 are possible and within the scope of theinvention. Input devices 3706 may be incorporated into a headrail 104 ofthe window blind 100, a solar panel attached to the window blind 100, orthe like.

Output devices 3708 may include, for example, LEDs, alarms, speakers, ordevices to provide feedback to a user. Such output devices 3708 may, forexample, indicate when a battery level for a window blind 100 is low;when motion has been detected by a window blind 100 (in embodimentswhere a motion sensor 3724 is incorporated into the window blind 100);when connectivity is enabled, disabled, or lost between the window blind100 and other devices; when the window blind 100 has experienced anerror or other fault condition; when the window blind 100 has detectedsmoke, carbon monoxide, or other gases (in the event a smoke or gasdetector 3722 is incorporated into the window blind 100); when asecurity event is detected by the window blind 100, or the like. Suchoutput devices 3708 may, in certain embodiments, be incorporated into aheadrail 104 of the window blind 100, a solar panel attached to thewindow blind 100, or the like.

The window blind 100 may also include a battery 3710 to power themotorized gearbox assembly 102. In certain embodiments, the battery 3710is housed within the headrail 104 of the window blind 100, external tothe motorized gearbox assembly 102. The battery 3710 may be rechargeableand may be recharged through the pull cord 110 previously discussed.Alternatively, or additionally, the battery 3710 is recharged by a solarpanel attached to the window blind 100. For example, a solar panel maybe attached to the headrail 104 of the window blind 100 between theheadrail 104 and the window. This will allow sunlight to shine on thesolar panel while substantially hiding the solar panel from view withinthe interior of a home or business. In other embodiments, solar panelsmay be incorporated into or attached to the slats 106 of a window blind100. In certain embodiments, a charging module 3712 may boost lowvoltage from a solar panel to a higher voltage needed to charge thebattery 3710 and/or operate various components within the motorizedgearbox assembly 102.

As shown, the window blind 100 may include various types of sensors3714. Some of these sensors 3714 may be related to operation of thewindow blind 100. Other sensors 3714 may take advantage of the windowblind's special placement within a home or building, namely on or nearwindows or other openings. The proximity of window blinds 100 to windowsand other openings make it possible for smart window blinds 100 toprovide a wide variety of features and functions not normally associatedwith window blinds 100.

As previously mentioned, a position encoder 1500 may be used to trackthe number of rotations and/or angular position of the output shaft 200.The number of rotations and angular position of the output shaft 200 maybe translated into an angular position of window blind slats 106 afterthe window blind 100 has been calibrated. Various techniques forcalibrating a window blind 100 will be discussed in association withFIG. 39.

A light sensor 3716 may sense light levels at or around a window blind100. Various types of light sensors 3716, including photovoltaic cells,cameras, photo diodes, proximity light sensor, or the like, may be useddepending on the application. In certain embodiments, a light sensor3716 may sense light external to a window. This may allow a window blind100 to open or close in response to lighting conditions outside abuilding. For example, a window blind 100 may be configured to open atsunrise and close at sunset. Alternatively, or additionally, a windowblind 100 may be configured to open (either fully or partially) whenconditions are overcast, thereby letting more light into a room orspace, and close (either fully or partially) in response to detectingfull sunlight, thereby letting less light into a room or space. Incertain embodiments, a light sensor 3716 may be used to determine atotal amount of light energy entering a room or space through a window.This information may be used to adjust a window blind 100 or windowcovering 100, or adjust HVAC system parameters.

A light sensor 3716 may also be configured to sense light levelsinternal to a window, such as within a room or interior space. This mayallow a window blind 100 to be adjusted based on interior light levels.For example, a window blind 100 may be opened in response to lowerlevels of interior light and closed in response to higher levels ofinterior light. In certain embodiments, various algorithms may be usedto adjust window blinds 100 in response to both exterior and interiorlight levels, as opposed to just one or the other. Thus, in certainembodiments light sensors 3716 may be provided to sense both exteriorand interior light levels.

In certain embodiments, the opening and closing of window blinds 100 maybe coordinated with the turning on or off of lights in a room or space.For example, if lights in a room are turned off, window blinds 100 maybe opened to compensate for the reduced amount of light. This allowsnatural light to replace artificial light and creates opportunities forconserving energy. In certain embodiments, lights may be automaticallyturned off and window blinds 100 may be automatically opened to replaceartificial light with natural light when conditions allow. In suchembodiments, the window blinds 100 and interior lighting may becontrolled by a home automation platform or other controller to providedesired amounts of light in a room or space while simultaneouslyconserving energy.

A temperature sensor 3718 may be used to sense temperature at or arounda window associated with the window blind 100. In certain embodiments,the temperature sensor 3718 is configured to sense a temperatureexternal to a window. For example, an infrared thermometer may be usedto infer the temperature external to a window by detecting thermalradiation emitted from objects outside the window. In other embodiments,the temperature sensor 3718 is configured to sense a temperatureinternal to the window. In yet other embodiments, the temperature sensor3718 is configured to sense a temperature of the window itself

In certain embodiments, a window blind 100 may be adjusted based on atemperature sensed by the temperature sensor 3718. For example, if aninterior temperature of a room is deemed to be too low, the window blind100 may open to let in additional sunlight and warm the room. Similarly,if the interior temperature of the room is deemed to be too high, thewindow blind 100 may close to reduce an amount of sunlight entering theMOM.

The window blind 100 may also use the temperature sensor 3718 toanticipate changes in temperature. For example, if an exteriortemperature or temperature of a window decreases (indicating it isgetting colder outside), the window blind 100 may be configured to openthe blinds and warm a room in an effort to mitigate anticipated coolingof the room. Similarly, if an exterior temperature or temperature of awindow increases (indicating it is getting warmer outside), the windowblind 100 may be configured to close the blinds in an effort to mitigateanticipated warming of the room.

In addition to adjusting the window blind 100 itself, temperaturemeasured at or near the window blind 100 may be used adjust an HVACsystem. The instant inventors have found that measuring temperature ator near a window may be more effective than measuring temperature insidea room (as performed by most thermostats) since windows are located atthe boundaries of a room. Temperature changes at these boundaries tendto lead temperature changes in other parts of the room at least partlybecause windows tend to provide lesser levels of insulation compared towalls and other parts of the room. Thus, temperature readings gatheredby a window blind 100 in accordance with the invention may be used aspart of a climate control system to adjust various HVAC systemparameters. In certain embodiments, a window blind 100 in accordancewith the invention may actually replace a traditional thermostat used inhomes or other establishments. That is, a window blind 100 in accordancewith the invention may monitor temperature at or near a window and, inresponse, relay at least one of commands and information to an HVACcontroller to regulate room temperature in accordance with the monitoredtemperature. This may, in certain embodiments, eliminate the need for aconventional thermostat, or improve the function of conventionalthermostats by providing improved temperature readings from boundaries(e.g., windows) in a room.

Due to the placement of window blinds 100 at or near windows, a windowblind 100 in accordance with the invention may also advantageouslyinclude security sensors 3720 to monitor security at or near a window.In one embodiment, the security sensor 3720 is a proximity sensorconfigured to detect opening and/or closing of a window or door. Inanother embodiment, the security sensor 3720 is an impact sensorconfigured to detect impacts on and/or breakage of a window. Forexample, an accelerometer may act as an impact sensor to detect anextent of force on a window. Different alerts or notifications may besent to a user or other entity depending on the extent of the impact.For example, touching a window may trigger a low priority alert ornotification. Larger forces (causing a window to break, for example) maytrigger higher priority alerts or notifications. In some embodiments,high priority alerts may be configured to trigger gathering of camerafootage at or near a window.

In another embodiment, the security sensor 3720 is a camera configuredto gather video or still shots at or around a window. In certainembodiments, an LED or other lighting may be provided for recordingvideo or still shots in low lighting conditions. The video or stillshots may be streamed wirelessly to a centralized security system orstored on the motorized gearbox assembly 102 for later retrieval. Inother embodiments, the security sensor 3720 is a motion sensorconfigured to detect motion at or around a window. In yet otherembodiments, the security sensor 3720 is an audio sensor configured tocollect audio at or around a window. By incorporating security sensors3720 into window blinds 100, security may be monitored at each window.In certain embodiments, information from the security sensors 3720 isrelayed to a centralized security system. In other embodiments, a windowblind 100 in accordance with the invention may be configured to act as acentralized security system by gathering information from securitysensors 3720 located at various window blinds 100. Such a centralizedsecurity system may, in certain embodiments, send notifications to auser, smart device, security company, law enforcement office, or thelike, when breaches of security are detected.

Various security sensors 3720 may be configured to work together incertain embodiments. For example, a motion sensor 3720 may, upon sensingmotion, trigger operation of a camera 3720, microphone 3720, or otherdata gathering sensor 3720. In other embodiments, a motion sensor 3720may trigger illumination of an LED or other output device, therebywarning a potential intruder that he or she has been detected. This mayprovide a deterrent effect. In other embodiments, a motion sensor 3720may trigger operation of a window blind 100. For example, if a motionsensor 3720 detects that an intruder is approaching a window, the motionsensor 3720 may trigger closing of the window blind 100 to obstruct theview through the window. Thus, security sensors 3720 may, in certainembodiments, trigger automatic operation of a window blind 100 or agroup of window blinds 100.

To further increase security, a window blind 100 in accordance with theinvention may be password protected to prevent unauthorized access orcontrol. Multiple failed password attempts may instigate a lockout fromthe window blind 100. In certain embodiments, a manual unlock may beaccomplished by physically manipulating the window blind itself. Forexample, the window blind 100 may be unlocked by manually tugging on apull cord 110 or performing some other manual adjustment or reset of thewindow blind 100.

The sensors 3714 may also, in certain embodiments, include safetysensors 3722 such as smoke detectors, carbon monoxide sensors, or thelike. Outfitting window blinds 100 with such sensors 3722 may provide alarge number of sensors at prime locations throughout a home orbusiness, while at the same time eliminating or reducing the need toequip a home or business with separate independent sensors. In certainembodiments, alerts or notifications may be sent to a user or firstresponder when smoke, carbon monoxide, or other critical substances orgases have been detected.

A current/voltage sensor 3724 may be provided to sense current orvoltage associated with the motor 400. In certain embodiments, thisinformation may be used to ensure that the motor 400 not overloaded. Thecurrent/voltage may also be used to calibrate the window blind 100. Forexample, when the slats 106 of a window blind 100 are fully tilted(i.e., have reached their maximum angular position), the current of themotor 400 may spike in response to their non-movement. This spike incurrent may indicate that a maximum angular position has been reached.The angular position of the slats 106 may be recorded at this point(using the position encoder 1500) to remember the maximum angularposition. The slats 106 of the window blind 100 may then be tilted inthe opposite direction until they stop (i.e., reach their minimumangular position). The current of the motor 400 may again spike inresponse to the non-movement of the slats 106. This spike may indicatethat a minimum angular position has been reached. The minimum angularposition may be recorded. In this way, the current/voltage sensor 3724may be used in conjunction with the position encoder 1500 to learn theangular range of motion and stopping points of the window blind slats106. In certain embodiments, this calibration technique may be performedwhen the motorized gearbox assembly 102 is initially powered up orinstalled in a window blind 100. Once the calibration is performed, themotorized gearbox assembly 102 may, through various calculations, movethe slats 106 to any desired angle or position between the stoppingpoints. As will be explained in more detail hereafter, thecurrent/voltage sensor 3724 may, along with the position encoder 1500,be used to estimate a size of a window blind 100. Knowing the size ofthe window blind 100 may be used to prevent overtorquing of the windowblind tilting mechanism.

As further shown in FIG. 37, a window blind 100 may, in certainembodiments, interface with devices external to the window blind 100.For example, the window blind 100 may communicate with an externalcomputing device 3740, such as a smart phone, tablet, laptop, desktopcomputer, or the like. The external computing device 3740 may, incertain embodiments, execute an application 3742 for setting up,managing, and controlling the automated window blind 100. One example ofsuch an application 3742 was discussed in association with FIGS. 27through 36.

In certain embodiments, sensors 3744 embedded within the externalcomputing device 3740 may be used to configure the window blind 100. Forexample, as will be discussed in more detail in association with FIG.44, GPS and/or compass sensors 3744 embedded in a smart phone may beused to determine a position and orientation of a window associated withthe window blind 100. This position and orientation may, in turn, beused to determine a position of the sun over time relative the window.The window blind 100 may then be programmed so that it opens and/orcloses (i.e., the slats 106 are tilted) in a way that takes into accountthe position of the sun over time relative to the position andorientation of the window. In other embodiments, the position andorientation may be used to determine which way a camera or other deviceincorporated into a window blind 100 is facing.

An automated window blind 100 in accordance with the invention may also,in certain embodiments, interface with a home automationplatform/controller 3746. Although an automated window blind 100 inaccordance with the invention may be programmed to operate on its own,the window blind 100 may also be configured to work with various homeautomation systems using their native protocols, or using a bridge thattranslates the native protocols into the window blind's native protocol.For example, an automated window blind 100 may be controlled by andcommunicate with a centralized home automation system or controllerusing Z-Wave, Zigbee, Insteon, or other home automation protocols.

An automated window blind 100 in accordance with the invention may alsobe configured to interface with external sensors 3748. Although varioussensors 3714 (as previously discussed) may be located in the windowblind 100 or in close proximity to the window blind 100, other sensors3748 may be located external to the window blind 100 and, in some cases,be far removed from the window blind 100. For example, a temperaturesensor located in one part of a building may be used to triggeroperation of window blinds 100 in other parts of the building. In othercases, readings from multiple sensors 3748 located throughout a buildingmay be used to influence operation of a window blind 100 or a group ofwindow blinds 100. In certain cases, data may be gathered from externalsensors 3748 and wirelessly communicated to a window blind 100 or groupof window blinds 100.

In certain embodiments, an automated window blind 100 in accordance withthe invention may interface with one or more video display adapters 3750(e.g., TV adapters 3750). In certain embodiments, a video displayadapter 3750 may be embodied as a USB or HDMI dongle plugged into a USBor HMDI port of a video display. The instant inventors have found that,with most video displays (e.g., televisions), a USB or HMDI port of thevideo display becomes live (i.e., energized) when the video display isturned on. This same USB or HMDI port goes dead when the video displayis turned off. Using this knowledge, a video display adapter 3750 inaccordance with the invention may be designed that generates a signalwhen the video display is turned on. This signal may cause a windowblind 100 or group of window blinds 100 to close when the video displayis turned on (thereby darkening a room or space) and open when the videodisplay is turned off (thereby lightening the room or space). Such asystem may provide simple, inexpensive, automated window coveringcontrol for home theaters, entertainment rooms, or other spaces. Incertain embodiments, a video display adapter 3750 such as that describedabove may also be used to control devices other than window blinds 100or coverings 100, such as lighting, fans, audio/visual equipment,switches, or the like.

An automated window blind 100 in accordance with the invention may alsointerface with various HVAC controls 3752. For example, as previouslymentioned, in certain embodiments a window blind 100 in accordance withthe invention may measure temperature at or near a window and relay thistemperature to a thermostat 3756, which may in turn adjust various HVACparameters. In other cases, the window blind 100 may actually functionas a thermostat by directly adjusting HVAC parameters. Thus, the windowblind 100 may, in certain embodiments, replace a conventionalthermostat. In doing so, the window blind 100 may rely on its owntemperature sensor 3718 and/or temperature sensors from other windowblinds 100 or devices in making determinations with regard to adjustingHVAC parameters.

Adjusting HVAC parameters may include, for example, switching heating orcooling devices 3752 on or off, regulating a flow of air or heattransfer fluid, or adjusting other features of an HVAC device. AdjustingHVAC parameters may also include automatically adjusting smart vents3752 b or smart windows 3752 b that regulate air flow into a room orspace. This may provide more targeted heating and/or cooling of a roomor area, as opposed to adjusting the heating and/or cooling of an entirebuilding. In certain cases, smart windows 3752 b may be opened iffavorable temperatures are detected external to a home or business, andthese temperatures can bring an interior temperature closer to a desiredinterior temperature. This may conserve energy and reduce utilization ofconventional heating and cooling systems.

As previously mentioned, a window blind 100 or group of window blinds100 in accordance with the invention may also be controlled (e.g.,wirelessly controlled) by external switches 3754, such as a remotecontrol or the specialized wall switch discussed in association withFIG. 40. These switches 3754 may provide additional mechanisms forcontrolling a window blind 100 or group of window blinds 100. In certaincases, a wall switch 3754 or remote control 3754 may provide a fasterand more convenient way to control a window blind 100 or group of windowblinds 100 than an application 3742. In certain embodiments, an externalswitch 3754 in accordance with the invention may provide functionalityto control devices other than window blinds 100, as will be discussed inmore detail hereafter.0

Referring to FIG. 39, various modules included in a system 3900 inaccordance with the invention are illustrated. These modules may beembodied in hardware, software, firmware, or a combination thereof. Themodules are illustrated to show functionality that may be provided bythe disclosed system 3900 as opposed to the locations where suchfunctionality is implemented. For example, the functionality of somemodules may be implemented entirely or mostly in a motorized gearboxassembly 102 in accordance with the invention. Other functionality maybe implemented in an application 3742 executing on an external computerdevice 3740, such as a smart phone or tablet. Other functionality may beimplemented in a home automation controller 3746. Yet otherfunctionality may be distributed between one or more of a motorizedgearbox assembly 102, external computing devices 3740, home automationcontroller 3746, and other devices. Thus, the location where the modulesare implemented may vary in different embodiments.

Once outfitted with a motorized gearbox assembly 102 in accordance withthe invention, a setup module 3902 may allow a window blind 100 to beset up. Setting up the window blind 100 may include, for example,detecting the automated window blind 100 (with an external computingdevice 3740), pairing the automated window blind 100 with the externalcomputing device 3740 (when using Bluetooth, for example), naming theautomated window blind 100, assigning the automated window blind 100 toa room, space, or group of window blinds 100, establishing default openand/or closed position for the window blind 100, setting up a scheduleor manner of operation for the window blind 100, and the like. Incertain embodiments, the setup module 3902 may use one or more of theother modules illustrated in FIG. 39 to perform these tasks.

A setup module 3902 may, in certain embodiments, enable automated windowblinds 100 to be ordered for a room or space. For example, the setupmodule 3902 may enable a user to input measurements for window blinds100 in a room or space. In certain embodiments, the setup module 3902may also allow the user to assign names to the window blinds 100according to their location in the room or space. These names may beprinted on the window blinds 100 at a manufacturing plant so that thewindow blinds 100 arrive at the user's home or business pre-labeled.This will ideally help the user quickly identify where the window blinds100 are to be installed.

A grouping module 3904 may enable multiple window blinds 100 to be setup and controlled as a group. In certain embodiments, this may beaccomplished by configuring one window blind 100 in the group to act asa master and the other window blinds 100 in the group to act as slavesof the master. The group of window blinds 100 may, in certainembodiments, be configured to operate from a single schedule or sensorson a single window blind 100, external computing device 3740, or homeautomation controller 3746, thereby ensuring the window blinds 100 inthe group are synchronized. In such an embodiment, the group of windowblinds 100 may operate in response to a command or commands from themaster window blind 100, external computing device 3740, or homeautomation controller 3746. In certain embodiments, separate commandsare sent to each window blind 100 belonging to a group to cause them toact in a synchronized manner. In other embodiments, a single commandthat is addressed to multiple window blinds 100 is sent. Each windowblind 100 may receive the command and either execute or discard thecommand based on whether the command is addressed to the window blind100.

In other embodiments, the group of window blinds 100 may each operatefrom an identical schedule programmed into each window blind 100, orfrom individual sensors in each window blind 100 that are configured inthe same way. As previously mentioned, an application 3742 in accordancewith the invention may, in certain embodiments, provide buttons oroptions that allow window blinds 100 to be grouped, as well as providebuttons or options that allow the window blinds 100 to be controlled orprogrammed as a group as opposed to individually. The grouping module3904 may also allow groups to be modified, such as by renaming a group,adding window blinds 100 to a group, naming window blinds 100 within agroup, removing window blinds 100 from a group, and the like.

A default settings module 3906 may allow various default settings to beestablished for a window blind 100 or a group of window blinds 100. Forexample, a default open and/or closed position may be established for awindow blind 100 or group of window blinds 100. When, a window blind 100is opened, such as by selecting an “open” button in an application 3742or other device, the window blind 100 may stop at the default openposition. Similarly, when a window blind 100 is closed, such as byselecting a “close” button in the application 3742 or other device, thewindow blind 100 may stop at the default closed position. Other defaultsettings are possible and within the scope of the invention.

A mode module 3908 may enable a user to establish and select fromvarious modes for a window blind 100 or group of window blinds 100. Suchmodes may change the behavior of a window blind 100 or group of windowblinds 100. For example, a user may establish an “at home” mode and an“away” mode that causes the user's window blinds 100 to behavedifferently based on whether the user is at home or away from home. Forexample, the user's window blinds 100 may be configured to open or closeat different times or in response to different conditions based onwhether the user is at home or away. An “away” mode in particular may,in certain embodiments, be configured to make a home or business appearto be occupied, such as by moving window blinds 100 periodically. Otherwindow blinds 100 may remain closed to prevent viewing of valuable itemswithin the home or business. The user may manually set the mode or themode may be set automatically in response to different conditions (e.g.,detecting activity or inactivity in a home using a motion sensor,detecting the presence or absence of a smart device, tag, or otherdevice carried by an occupant, for example).

A calibration module 3910 may be configured to calibrate a motorizedgearbox assembly 102 in accordance with the invention. For example, whena motorized gearbox assembly 102 is initially installed in a windowblind 100, the motorized gearbox assembly 102 may tilt the slats 106 inboth directions to determine the angular range of motion. That is themotorized gearbox assembly 102 may tilt the slats 106 in a firstdirection until the slats 106 reach a first stopping point, and thentilt the slats 106 in the opposite direction until the slats 106 reach asecond stopping point. Because, the slats 106 may not have a hard stopin either direction, in certain embodiments the slats 106 are tilteduntil the current of the motor 400 reaches a specified threshold (oruntil the position encoder 1500 detects that movement has substantiallystopped) and then titled in the opposite direction until the current ofthe motor 400 reaches the specified threshold (or until the positionencoder 1500 detects that movement has substantially stopped).Alternatively, or additionally, the slats 106 may be tilted until theangular velocity of the slats 106 falls below a specified threshold andthen titled in the opposite direction until the angular velocity of theslats 106 falls below the specified threshold. In this way, thecalibration module 3910 may determine the limits of angular travel. Oncethese limits are determined using the position encoder 1500, the slats106 may be tilted to any intermediate angle between the limits using asimple calculation, and/or the motorized gearbox assembly 102 may beable to determine a current angular position of the slats 106.

In certain embodiments, the calibration module 3910 may also beconfigured to determine a size of the window blind 100, such as thewindow blind's length, width, overall area, or weight. This may beimportant to properly calibrate the window blind 100 and ensure that atilting mechanism of the window blind 100 is not overtorqued. Forexample, a larger window blind 100 may require more force to operate thewindow blind 100 and a smaller window blind 100 may require less forceto operate the window blind 100, due to the weight of their respectiveslats 106 and structure. Calculating the size of the window blind 100may ensure that a proper amount of power (and thus force) is applied tothe blinds tilting mechanism. In certain embodiments, the calibrationmodule 3910 may calculate the weight by examining an amount of currentdrawn by the motor 400 (as measured by the current sensor 3724) inrelation to an amount angular movement or speed of the slats 106 (asmeasured by the position encoder 1500). The more current that is drawnfor a given angular distance or speed, the larger the size of the windowblind 100.

A scheduling module 3912 may be configured to schedule operation of awindow blind 100 or group of window blinds 100. Various differenttechniques may be used to schedule operation of a window blind 100. Incertain embodiments, a user may designate open/close times as discussedin association with FIG. 30. In other cases, a schedule may beautomatically determined based on a time of year and/or location ororientation of a window blind 100. For example, a user may schedule awindow blind 100 to open at sunrise and close at sunset. The schedulingmodule 3912 may reference a database or utilize an algorithm todetermine sunrise and sunset times for the window blind 100 based on thewindow blind's location and the time of year and schedule opening andclosing times accordingly. These opening and closing times may beadjusted throughout the year as the position of the sun changes.

In other cases, the scheduling module 3912 may consider the orientationof a window blind 100. Based on the window blind's orientation and theincidence of the sun on the window blind 100 at different times of day,the opening and closing times may be adjusted. The opening and closingtimes may be adjusted based on the changing incidence of the sun on thewindow blind 100 over time. In certain embodiments, each window blind100 may keep track of a current date and time using an internal clock orby referencing an external clock so that the position of the sun for thedate and time can be determined.

A command execution module 3914 may enable a window blind 100 to respondto commands in additional to following a schedule or operating inresponse to sensed lighting conditions. For example, a user may wish tomanually open and close a window blind 100 or a group of window blinds100 by selecting buttons or options in an application 3742, or using aspecialized wall switch 3754. For example, a window blind 100 or a groupof window blinds 100 may open in response to receiving an open commandand close in response to receiving a close command. A stop command maycause the window blind 100 or group of window blinds 100 to stop attheir current angular position. Other commands are possible and withinthe scope of the invention.

An environmental awareness module 3916 may allow a window blind 100 orgroup of window blinds 100 to operate in response to environmentalconditions. For example, a window blind 100 or group of window blinds100 may be configured to open or close in response to changing lightingconditions, changing temperature conditions, detected motion, detectednoise, detected security situations, detected safety situations, or thelike. These conditions may be conditions inside a building, outside abuilding, or a combination thereof. The environmental awareness module3916 may require sensors, placed at suitable locations, to detectenvironmental conditions that may trigger operation of the window blinds100.

A motion control module 3918 may be configured to control the motion ofa window blind 100. As previously mentioned, functionality may beprovided to designate how fast a window blind 100 or group of windowblinds 100 opens or closes in association with a particular event. As anexample, a user may want a window blind 100 or group of window blinds100 to open or close over a specified period of time (e.g., 10 minutes,30 minutes, an hour, etc.) instead of opening or closing in an abruptmanner. In other cases, the window blinds 100 may move gradually tomirror movement of the sun. In some cases, this may make movement of thewindow blinds 100 undetectable to the naked eye. The motion controlmodule 3918 may enable this functionality. The motion control module3918 may provide this functionality by performing slight incrementalangular movements (possibly invisible to the eye) of the slats 106 overa specified period of time. Alternatively, or additionally, the motioncontrol module 3918 may simply adjust the speed of the motor 400. Incertain embodiments, this may be accomplished using pulse-widemodulation (PWM) or other techniques to adjust the speed of the motor400.

A connectivity module 3920 may be used to provide connectivity between awindow blind 100 and other devices. This may include providingconnectivity between a window blind 100 and an external computing device3740, a home automation platform/controller 3746, external sensors 3748,video display adapters 3750, HVAC controls 3752, external switches 3754,thermostats 3756, or other window blinds 100. Any suitable communicationprotocol may be used. In certain embodiments, the connectivity module3920 allows devices to act as repeaters of a signal, thereby allowingthe devices to form a mesh network of interconnected devices.

A synchronization module 3922 may enable a window blind 100 to besynchronized with an external computing device 3740, such as a smartphone or tablet. For example, the synchronization module 3922 may enablea window blind 100 to synchronize its date and time with the date andtime of the external computing device 3740. The synchronization module3922 may also enable the window blind 100 to synchronize itself withvarious sensors 3744 of the external computing device 3740. For example,as shown in FIG. 44, an external computing device 3740 may, in certainembodiments, be aligned with a window 4400 associated with a windowblind 100 or other window covering. Aligning the external computingdevice 3740 with the window 4400 may include, for example, setting theexternal computing device 3740 flat on the window sill 4402 and aligningit with a corner or center of the window sill 4402 such that theexternal computing device 3740 is oriented substantially normal to thewindow 4400. An option may then be selected in the application 3742 thatcauses the external computing device 3740 to record the current position(GPS coordinates, height, etc.) and/or orientation of the externalcomputing device 3740 using the external computing device's internalsensors (e.g., compass and/or GPS sensors). The position and orientationof the window 4400 and associated window blind 100 may be extrapolatedfrom the position and orientation of the external computing device 3740.

In certain embodiments, additional information, such as the size anddimensions (e.g., height, width) of the window 4400 may be input to theexternal computing device 3740 by the user to further define theposition and orientation of the window 4400. Once the position andorientation of a window 4400 are known, a window blind 100 may beprogrammed to operate (e.g., open/close) based on the position andorientation of the window 4400 in relation to the position andorientation of the sun. The position and orientation of the window 4400may also be used to determine how and when sunlight will be incident ona solar panel used to power a window blind 100 or charge a battery 3710.

In certain embodiments, the operation of a window blind 100 or group ofwindow blinds 100 may be synchronized with a calendar, timer, or alarmclock of an external computing device 3740. For example, an alarm clockassociated with an external computing device 3740 may cause a windowblind 100 or group of window blinds 100 to open and thereby allowsunlight to enter a room or space. Similarly, a calendar event orexpiration of a timer may cause a window blind 100 or group of windowblinds 100 to open or close.

A safety module 3924 in accordance with the invention may be configuredto provide various safety features at or near a window blind 100. Forexample, as previously explained, a window blind 100 in accordance withthe invention may be equipped with safety sensors 3722 such as smokedetectors, carbon monoxide sensors, or the like. In certain embodiments,the safety module 3924 may monitor these safety sensors 3722 andgenerate notifications or set off alarms when a hazardous orsafety-related condition is detected.

A security module 3926 may be configured to monitor security at or neara window 4400 associated with a window blind 100. As previouslymentioned, one or more security sensors 3720 may incorporated into orlocated proximate a smart window blind 100 in accordance with theinvention. Using the security sensors 3720, the security module 3926 maydetect events such as, opening or closing of a window, impacts on awindow, breakage of a window, motion near a window, sound near a window,or the like. When a security-related event or condition is detected, thesecurity module 3926 may generate a notification, set off an alarm, orthe like. In certain embodiments, the security module 3926 is configuredto monitor security conditions at multiple windows, thereby providingcomprehensive security throughout a home or business.

A climate control module 3928 may be configured to monitor and adjustthe climate within a room or space. As previously mentioned, a windowblind 100 in accordance with the invention may be equipped withtemperature sensors 3718, humidity sensors, or the like. These sensorsmay be used to monitor the climate internal to or external to a room orspace. Using these sensors, the climate control module 3928 may monitorthe climate and make adjustments where needed. In certain embodiments,the climate control module 3928 sends information to a thermostat 3756so that the thermostat 3756 can adjust HVAC parameters (heating,cooling, humidity, air circulation, etc.) accordingly. In otherembodiments, the climate control module 3928 adjusts the HVAC parametersdirectly.

A power management module 3930 may be configured to manage powerrequired by a window blind 100 in accordance with the invention. Aspreviously mentioned, the window blind 100 may be powered by a battery3710. In certain embodiments, this battery 3710 is charged by a solarpanel 3712. The solar panel 3712 may be accompanied by a charging module3712 to boost a low voltage of the solar panel (in reduced lightingconditions) to a higher voltage needed to charge the battery and/oroperate components of the motorized gearbox assembly 102. In otherembodiments, the battery 3710 is charged through a pull cord 110.

In certain embodiments, the power management module 3930 may track powerlevels and/or usage trends of a window blind 100 or group of windowblinds 100 and make or suggest adjustments to more efficiently utilizepower. For example, the power management module 3930 may adjust orsuggest adjusting a number of scheduled openings/closings to extendbattery life. In certain embodiments, the power management module 3930may put a window blind 100 (or selected components of a window blind100) into a sleep or lower power mode when the window blind 100 and/orany attached components (e.g., sensors) are not in use. Various events(detected motion, security events, safety-related events, etc.) may wakeup a window blind 100 or selected components of a window blind 100. Awindow blind 100 may also wake up when communications are received fromexternal devices, such as an external computing device 3740, homeautomation controller 3746, video display adapter 3750, external switch3754, other window blinds 100, or the like.

A learning module 3932 may be configured to learn a user's tendenciesand operate a window blind 100 or group of window blinds 100 inaccordance with those tendencies. For example, the learning module 3932may observe that a user opens or closes a window blind 100 at specifictimes of the day or in response to certain lighting conditions. Thisobservation may take place continually or over a specified period oftime. The learning module 3932 may then program the window blind 100 orinstruct the window blind 100 to open or close at the observed times orin accordance with some algorithm designed to implement userpreferences. In another example, the learning module 3932 may observethat the user opens or closes certain window blinds 100 at the same timeor proximate in time and then program the window blinds 100 to open andclose together as a group at the observed time. In yet other cases, thelearning module 3932 may observe an angle that slats 106 are adjusted toand adjust the slats 106 accordingly. Other types of learning arepossible and within the scope of the invention.

Referring to FIG. 40, one embodiment of a specialized wall switch 3754in accordance with the invention is illustrated. The specialized wallswitch 3754 may be battery powered or connected to a building'selectrical system. The specialized wall switch 3754 enables large numberof different devices (e.g., window blinds 100 or groups of window blinds100, lights, fans, heating systems, cooling systems, etc.) to becontrolled (e.g., wirelessly controlled) with a single switch 3754,without requiring separate controls for each device or system. As shownthe specialized wall switch 3754 includes a set of directional buttons4000 a-d for selecting a device or system to control, as well asadjusting an amount associated with the device or system. A first pairof directional buttons 4000 a, 4000 b enables a user to select a currentfunction for the specialized wall switch 3754. A set of indicators 4002(e.g., colored LEDs 4002, LEDs 4002 with accompanying pictures or icons,etc.) may be provided to indicate the current function of thespecialized wall switch 3754. A second pair of directional buttons 4000c, 4000 d enables the user to increase or decrease an amount associatedwith the current function. The first and second pairs of directionalbuttons 4000 a-d may be oriented substantially perpendicular to oneanother. Similarly, the buttons 4000 a-d may be embodied as separatebuttons 4000 a-d, as illustrated, or be embodied as one or more rockeror rocker-like switches, a directional pad, a control pad, a joystick,touchscreen with virtual directional buttons, or the like. For thepurposes of the disclosure and claims, each of these embodiments will becollectively referred to as a “directional switching device.”

For example, referring to FIG. 41, while continuing to refer generallyto FIG. 40, the illustrated specialized wall switch 3754 may beconfigured to control five different devices or systems, such as awindow blind 100 or group of window blinds 100, a fan 4100, a heatingsystem 4102 such as a furnace, a cooling system 4104, and lights 4106.These functions are presented by way of example and not limitation.Other types and numbers of functions are possible and within the scopeof the invention.

A center indicator 4002 may be white and illuminate when lights 4106 arethe current function. When lights 4106 are the current function, thebuttons 4000 c, 4000 d may increase or decrease the intensity of thelights 4106, or turn the lights 4106 on or off. A first indicator 4002right of center may be blue and illuminate when a cooling system 4104 isthe current function. When the cooling system 4104 is the currentfunction, the buttons 4000 c, 4000 d may turn a desired temperature upor down or, in other embodiments, turn the cooling system 4104 on oroff. A first indicator 4002 left of center may be red and illuminatewhen a heating system 4102 is the current function. When the heatingsystem 4102 is the current function, the buttons 4000 c, 4000 d may turnthe desired temperature up or down or, in other embodiments, turn theheating system 4102 on or off

A second indicator 4002 right of center may be green and illuminate whena ceiling fan 4100 (or other air circulation device 4100) is the currentfunction. When the fan 4100 is the current function, the buttons 4000 c,4000 d may adjust the speed of the fan 4100 up or down. A secondindicator 4002 left of center may be yellow and illuminate when a windowblind 100 or group of window blinds 100 is the current function. When awindow blind 100 or group of window blinds 100 is the current function,the buttons 4000 c, 4000 d may adjust the tilt of the slats 106 of thewindow blind 100 or group of window blinds 100 or, alternatively, causethe window blind 100 or group of window blinds 100 to open or close.

Referring to FIG. 42, in certain embodiments the specialized wall switch3754 illustrated in FIG. 40 may be embodied as a touchscreen 4200providing virtual directional controls similar to the physical controlsshown of FIG. 40. As shown the touchscreen 4200 includes a set ofvirtual directional buttons 4202 a-d for selecting a device or system tocontrol, as well as adjusting an amount associated with the device orsystem. A first pair of virtual directional buttons 4202 a, 4202 benables a user to select a current function for the touchscreen 4200. Anindicator icon 4204 may be provided to indicate the current function ofthe touchscreen 4200. A second pair of virtual directional buttons 4202c, 4202 d enables the user to increase or decrease an amount associatedwith the current function. FIG. 43 shows an embodiment similar to thatof FIG. 42 except that the virtual directional buttons 4202 a, 4202 bare replaced by virtual buttons 4300 or icons 4300 enabling a user todirectly select a current function. In the embodiment shown in FIG. 43,the virtual button 4300 or icon 4300 representing the current functionis bolded or has its colors inverted.

Although particular reference has been made herein to window blinds 100and window blind actuation mechanisms, various features and functions ofthe disclosed embodiments of the invention may equally apply to othertypes of automated window coverings (e.g., automated shutters, curtains,shades, etc.) and window covering actuation mechanisms. The disclosedfeatures and functions may also be applicable to other aspects of windowblinds 100. For example, different features and functions disclosedherein may be used to automatically raise and lower the slats 106 ofwindow blinds 100 as opposed to just adjusting the tilt of the slats106. Thus, where applicable, the disclosed features and functions may beused with other types of window coverings and window covering actuationmechanisms.

The apparatus and methods disclosed herein may be embodied in otherspecific forms without departing from their spirit or essentialcharacteristics. The described embodiments are to be considered in allrespects only as illustrative and not restrictive. The scope of theinvention is, therefore, indicated by the appended claims rather than bythe foregoing description. All changes which come within the meaning andrange of equivalency of the claims are to be embraced within theirscope.

What is claimed is:
 1. A system comprising: at least one processor; atleast one memory device operably coupled to the at least one processorand storing computer instructions for execution on the at least oneprocessor, the computer instructions causing the at least one processorto: prompt a user to align a smart phone or tablet with a geometricfeature of one or more windows; determine a position and orientation ofthe one or more windows using sensors of the smart phone or tablet;determine, based on the position and orientation, a position of the sunover time relative to the one or more windows and a facing direction ofa camera in a window covering of the one or more windows; program thewindow covering of the one or more windows to operate based on theposition of the sun over time and the facing direction of the camera. 2.The system of claim 1, wherein programming the window covering comprisesautomatically tilting slats of the window covering to take into accountthe position of the sun over time.
 3. The system of claim 1, whereinaligning the smart phone or tablet comprises aligning the smart phone ortablet with a window sill of the one or more windows.
 4. The system ofclaim 1, wherein determining a position of the sun over time comprisesretrieving the position of the sun over time from a database.
 5. Thesystem of claim 1, wherein the computer instructions further cause theat least one processor to determine dimensions of the one or morewindows.
 6. The system of claim 5, wherein programming the windowcovering comprises adjusting the window covering taking into account thedimensions of the one or more windows.
 7. The system claim 1, whereindetermining a position of the one or more windows comprises determininga height of the one or more windows from a floor.
 8. The system of claim1, wherein determining a position of the one or more windows comprisesdetermining GPS coordinates of the one or more windows.
 9. The system ofclaim 1, wherein programming the one or more windows covering comprisesautomatically adjusting the window covering by a controller built intothe window covering.
 10. A method using the system of claim 1, themethod comprising: prompting the user to align the smart phone or tabletwith the geometric feature of the one or more windows; determining theposition and orientation of the one or more windows using sensors of thesmart phone or tablet; determining, based on the position andorientation, the position of the sun over time relative to the one ormore windows and the facing direction of the camera in the windowcovering of the one or more windows; automatically adjusting the windowcovering of the one or more window to operate based on the position ofthe sun over time and the facing direction of the camera.
 11. The methodof claim 10, wherein automatically adjusting the window coveringcomprises programming the one or more windows covering to adjust itselfwhile taking into account the position of the sun over time.
 12. Themethod of claim 10, wherein automatically adjusting the window coveringcomprises automatically tilting slats of the window covering to takeinto account the position of the sun over time.
 13. The method of claim10, wherein aligning the smart phone or tablet comprises aligning thesmart phone or tablet with a window sill of the one or more windows. 14.The method of claim 10, wherein determining a position of the sun overtime comprises retrieving the position of the sun over time from adatabase.
 15. The method of claim 10, further comprising determiningdimensions of the one or more windows.
 16. The method of claim 15,wherein automatically adjusting the window covering comprises adjustingthe window covering taking into account the dimensions of the one ormore windows.
 17. The method claim 10, wherein determining a position ofthe one or more windows comprises determining a height of the one ormore windows from a floor.
 18. The method of claim 10, whereindetermining a position of the one or more windows comprises determiningGPS coordinates of the one or more windows.
 19. The method of claim 10,wherein automatically adjusting the window covering comprisesautomatically adjusting the one or more windows covering by a controllerbuilt into the window covering.